Размеры стен

Я хотел бы установить промежуток от элемента до некоторого значения, чтобы размер был четко виден. Пожалуйста, найдите ниже снимок экрана.

В настоящее время это выглядит так.

В настоящее время это выглядит так

Но я бы хотел добиться как ниже.

Но я бы хотел добиться как ниже

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);
Другие вопросы по тегам