Example #1
0
        private DTO.DTO GetAlignmentProfileDTO(DBObject obj)
        {
            var dto     = new SpeckleAutoCAD.DTO.DTO();
            var profile = obj as ACD.Profile;

            using (var tr = obj.Database.TransactionManager.StartTransaction())
            {
                using (var alignment = tr.GetObject(profile.AlignmentId, OpenMode.ForRead) as ACD.Alignment)
                {
                    var polyLineId = alignment.GetPolyline();
                    var polyline   = polyLineId.GetObject(OpenMode.ForRead) as Polyline;
                    var points     = Get3dPath(polyline, profile);
                    var poly3d     = new Polyline3d(Poly3dType.SimplePoly, points, polyline.Closed);
                    var payload    = poly3d.ToPolylinePayload();
                    var properties = payload.Properties;

                    payload.Name = $"{alignment.Name} - {profile.Name}";
                    properties["AlignmentName"] = alignment.Name;
                    properties["ProfileName"]   = profile.Name;
                    payload.PropertySets        = GetPropertySets(alignment);
                    dto.Data = JsonConvert.SerializeObject(payload);
                }

                dto.ObjectType = Constants.Polyline3d;

                return(dto);
            }
        }
Example #2
0
        private DTO.DTO GetDTO(Polyline3d polyline)
        {
            var dto     = new SpeckleAutoCAD.DTO.DTO();
            var payload = polyline.ToPolylinePayload();

            payload.PropertySets = GetPropertySets(polyline);
            dto.ObjectType       = Constants.Polyline3d;
            dto.Data             = JsonConvert.SerializeObject(payload);
            return(dto);
        }
Example #3
0
        private DTO.DTO GetArcDTO(DBObject obj)
        {
            var dto        = new SpeckleAutoCAD.DTO.DTO();
            var arc        = obj as Arc;
            var arcPayload = arc.ToArcPayload();

            arcPayload.PropertySets = GetPropertySets(arc);
            dto.ObjectType          = Constants.Arc;
            dto.Data = JsonConvert.SerializeObject(arcPayload);
            return(dto);
        }
Example #4
0
        private DTO.DTO GetLineDTO(DBObject obj)
        {
            var dto  = new SpeckleAutoCAD.DTO.DTO();
            var line = obj as Line;
            var o    = line.ToLinePayload();

            o.PropertySets = GetPropertySets(line);
            dto.ObjectType = Constants.Line;
            dto.Data       = JsonConvert.SerializeObject(o);

            return(dto);
        }