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); } }
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); }
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); }
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); }