Размеры стен
1 ответ
Вы фактически контролируете линию, когда создаете измерение. Возьмите строку из Revit, затем трансформируйте ее и сместите ее перпендикулярно линии, которая вас интересует: (с учетом dbView, эталонного массива и кривой)
//create your line along the element you want to dimension
Line line = Line.CreateBound(locCurve.Curve.GetEndPoint(0), locCurve.Curve.GetEndPoint(1));
//Compute the perpendicular of that line (I took advantage of the fact that I was working in plan:
XYZ perpendicular = line.ComputeDerivatives(0.5, true).BasisX.CrossProduct(new XYZ(0, 0, 1));
//transform the line to the new offset location:
Line offsetline = line.CreateTransformed(Transform.CreateTranslation(perpendicular.Normalize())) as Line;
//Create the dimension.
revitDoc.Create.NewDimension(dbView, offsetline, aDimensionRefArray);