Revit Get Point (X, Y, Z) из Cad - PullRequest
       39

Revit Get Point (X, Y, Z) из Cad

0 голосов
/ 29 декабря 2018

Я пытаюсь получить некоторые (XY) координаты точек и поворота из импортированного САПР внутри Revit, но это работает правильно, только если файл САПР никогда не перемещался / вращался, это означает, что Revit API получает внутренние координатыСАПР независимо от позиции САПР в Revit.

Теперь, когда я пытаюсь выполнить то же упражнение, но с «Динамо», координаты верны, даже если САПР был перемещен / повернут

Так как сделатьэто верно?

        GeometryElement geoElement = cad.get_Geometry(new Options());

        foreach (GeometryObject geoObject in geoElement)
        {
            GeometryInstance instance = geoObject as GeometryInstance;
            if (null != instance)
            {
                foreach (GeometryObject instObj in instance.SymbolGeometry)
                {
                    if (instObj is GeometryInstance) 
                    {
                        GeometryInstance gi_block = instObj as GeometryInstance;
                        Transform transform = gi_block.Transform;

                        XYZ origin =  transform.Origin; // coordinates
                        TaskDialog.Show("xx", origin.ToString());

                        XYZ vectorTran = transform.OfVector(transform.BasisX.Normalize());
                        double rot = transform.BasisX.AngleOnPlaneTo(vectorTran, transform.BasisZ.Normalize()); // angle in radians

                    }
                }
            }
        }

Ответы [ 2 ]

0 голосов
/ 07 января 2019

Вероятно, вам следует прежде всего изучить ProjectLocation , связанный с вашим экземпляром импорта.Для этого вы можете использовать RevitLookup .

0 голосов
/ 30 декабря 2018

Возможно, «Динамо» автоматически подстраивается под местоположение проекта Revit, поворот на север и другие глобальные параметры преобразования координат.

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

Проверьте получившуюся надстройку Конкретная точка установки бетона , теперь живую на GitHub в SetoutPoints репозитории .

...