命名优化,达芬奇字体修改工具

This commit is contained in:
GG Z
2025-10-04 08:52:23 +08:00
parent 0d0afbc78e
commit 4722a4c881
121 changed files with 1801 additions and 1368 deletions

View File

@@ -37,7 +37,7 @@ public class CorrectReferLevelExecutes
public List<MessageModel> SetInstances()
{
List<MessageModel> errors = [];
doc.Invoke(ts =>
doc.Invoke(_ =>
{
//对比标高,得到实际分层位置
foreach (var keyPair in levelOutlines)
@@ -109,7 +109,7 @@ public class CorrectReferLevelExecutes
public List<MessageModel> SetMEPCurves()
{
List<MessageModel> errors = [];
doc.Invoke(ts =>
doc.Invoke(_ =>
{
//对比标高,得到实际分层位置
foreach (var keyPair in levelOutlines)
@@ -185,7 +185,6 @@ public class CorrectReferLevelExecutes
public static Dictionary<Level, Outline> GetRegions(IEnumerable<Level> levels)
{
Dictionary<Level, Outline> levelOutlines = [];
////获取标高范围
for (var i = 0; i < levels.Count() - 1; i++)
{
@@ -219,39 +218,41 @@ public class CorrectReferLevelExecutes
familyInstance.Symbol.Activate();
}
var hostLevel = familyInstance.Host as Level;
var offset = hostLevel.Elevation + originOffset - level.Elevation;
var loc = familyInstance.Location as LocationCurve;
var p1 = loc.Curve.GetEndPoint(0);
var p2 = loc.Curve.GetEndPoint(1);
var line = Line.CreateBound(p1.Add(XYZ.BasisZ * level.Elevation), p2.Add(XYZ.BasisZ * level.Elevation));
var newFamilyInstance = doc.Create.NewFamilyInstance(level.GetPlaneReference(), line, familyInstance.Symbol);
var offsetParam = newFamilyInstance.get_Parameter(BuiltInParameter.INSTANCE_FREE_HOST_OFFSET_PARAM);
offsetParam.Set(offset);
foreach (Parameter param in familyInstance.Parameters)
if (familyInstance.Host is Level hostLevel)
{
if (param.IsReadOnly || param.Definition.Name == offsetParam.Definition.Name)
{
continue;
}
var offset = hostLevel.Elevation + originOffset - level.Elevation;
var loc = familyInstance.Location as LocationCurve;
var p1 = loc.Curve.GetEndPoint(0);
var p2 = loc.Curve.GetEndPoint(1);
var line = Line.CreateBound(p1.Add(XYZ.BasisZ * level.Elevation), p2.Add(XYZ.BasisZ * level.Elevation));
switch (param.StorageType)
var newFamilyInstance = doc.Create.NewFamilyInstance(level.GetPlaneReference(), line, familyInstance.Symbol);
var offsetParam = newFamilyInstance.get_Parameter(BuiltInParameter.INSTANCE_FREE_HOST_OFFSET_PARAM);
offsetParam.Set(offset);
foreach (Parameter param in familyInstance.Parameters)
{
case StorageType.None:
break;
case StorageType.Integer:
newFamilyInstance.get_Parameter(param.Definition).Set(param.AsInteger());
break;
case StorageType.Double:
newFamilyInstance.get_Parameter(param.Definition).Set(param.AsDouble());
break;
case StorageType.String:
newFamilyInstance.get_Parameter(param.Definition).Set(param.AsString());
break;
case StorageType.ElementId:
newFamilyInstance.get_Parameter(param.Definition).Set(param.AsElementId());
break;
if (param.IsReadOnly || param.Definition.Name == offsetParam.Definition.Name)
{
continue;
}
switch (param.StorageType)
{
case StorageType.None:
break;
case StorageType.Integer:
newFamilyInstance.get_Parameter(param.Definition).Set(param.AsInteger());
break;
case StorageType.Double:
newFamilyInstance.get_Parameter(param.Definition).Set(param.AsDouble());
break;
case StorageType.String:
newFamilyInstance.get_Parameter(param.Definition).Set(param.AsString());
break;
case StorageType.ElementId:
newFamilyInstance.get_Parameter(param.Definition).Set(param.AsElementId());
break;
}
}
}
@@ -266,7 +267,6 @@ public class CorrectReferLevelExecutes
private static void ModifyOneLevelBasedFamily(Document doc, Level level, FamilyInstance familyInstance)
{
var baseLevelParam = familyInstance.get_Parameter(BuiltInParameter.FAMILY_LEVEL_PARAM);
var originLevel = doc.GetElement(baseLevelParam.AsElementId()) as Level;
baseLevelParam.Set(level.Id);
var param = familyInstance.get_Parameter(BuiltInParameter.INSTANCE_FREE_HOST_OFFSET_PARAM);
@@ -276,6 +276,7 @@ public class CorrectReferLevelExecutes
}
var value = param.AsDouble();
var originLevel = doc.GetElement(baseLevelParam.AsElementId()) as Level;
param.Set(originLevel.Elevation + value - level.Elevation);
}
/// <summary>
@@ -342,7 +343,6 @@ public class CorrectReferLevelExecutes
/// <param name="doc"></param>
/// <param name="level"></param>
/// <param name="familyInstance"></param>
/// <exception cref="ArgumentOutOfRangeException"></exception>
private static void ModifyWorkPlaneBasedFamily(Document doc, Level level, FamilyInstance familyInstance)
{
var baseLevelParam = familyInstance.get_Parameter(BuiltInParameter.INSTANCE_SCHEDULE_ONLY_LEVEL_PARAM);
@@ -384,8 +384,6 @@ public class CorrectReferLevelExecutes
case StorageType.ElementId:
newFamilyInstance.get_Parameter(param.Definition).Set(param.AsElementId());
break;
default:
break;
}
}