public static BeamBase FromSpeckle(SpeckleBrep BaseObj) { if ((string)BaseObj.Properties[GlobalVar.discriminator] != "BeamBase") { throw new Exception("Can't convert to BeamBase, missing discriminator."); } using (RhinoConverter rhConv = new RhinoConverter()) { var myBeamBase = new BeamBase(); myBeamBase.MainVolume = (Brep)rhConv.ToNative(BaseObj); myBeamBase.DetailedVolume = (Brep)rhConv.ToNative((SpeckleObject)BaseObj.Properties["DetailedVolume"]); myBeamBase.TopLeftCurve = (Curve)rhConv.ToNative((SpeckleObject)BaseObj.Properties["TopLeft"]); myBeamBase.TopRightCurve = (Curve)rhConv.ToNative((SpeckleObject)BaseObj.Properties["TopRight"]); myBeamBase.BottomRightCurve = (Curve)rhConv.ToNative((SpeckleObject)BaseObj.Properties["BottomRight"]); myBeamBase.BottomLeftCurve = (Curve)rhConv.ToNative((SpeckleObject)BaseObj.Properties["BottomLeft"]); return(myBeamBase); } }
// Brep fallback public static Mesh ToNative(this SpeckleBrep brep) { if (brep.DisplayValue != null) { return(brep.DisplayValue.ToNative()); } return(null); }
public SpeckleBrep ToSpeckle() { SpeckleBrep speckleBrep = ((BeamBase)this).ToSpeckle(); speckleBrep.Properties[GlobalVar.discriminator] = "DetailedBeam"; speckleBrep.Properties["tolerance"] = Tolerance; speckleBrep.Properties["densityMat"] = DensityMat; return(speckleBrep); }
public SpeckleBrep ToSpeckle() { SpeckleBrep speckleBrep = MainVolume.ToSpeckle(); speckleBrep.Properties[GlobalVar.discriminator] = "BeamBase"; speckleBrep.Properties["TopLeft"] = TopLeftCurve.ToSpeckle(); speckleBrep.Properties["TopRight"] = TopRightCurve.ToSpeckle(); speckleBrep.Properties["BottomRight"] = BottomRightCurve.ToSpeckle(); speckleBrep.Properties["BottomLeft"] = BottomLeftCurve.ToSpeckle(); speckleBrep.Properties["DetailedVolume"] = DetailedVolume.ToSpeckle(); return(speckleBrep); }
public static Brep ToNative(this SpeckleBrep brep) { try { if (brep.Provenance == "Rhino") { var myBrep = JsonConvert.DeserializeObject <Brep>(( string )brep.RawData); myBrep.UserDictionary.ReplaceContentsWith(brep.Properties.ToNative()); return(myBrep); } throw new Exception("Unknown brep provenance: " + brep.Provenance + ". Don't know how to convert from one to the other."); } catch { System.Diagnostics.Debug.WriteLine("Failed to deserialise brep"); return(null); } }
public static Brep ToNative(this SpeckleBrep brep) { try { if (brep.Provenance == "ON") { var myBrep = ( Brep )Converter.getObjFromString(brep.Base64); myBrep.UserDictionary.ReplaceContentsWith(brep.Properties.ToNative()); return(myBrep); } else { throw new Exception("Unknown brep provenance: " + brep.Provenance + ". Don't know how to convert from one to the other."); } } catch { // Fail silently return(null); } }
/// <summary> /// /// </summary> /// <param name="brep"></param> /// <returns></returns> public static SpeckleUnityMesh ToNative(this SpeckleBrep brep) { SpeckleMesh speckleMesh = brep.DisplayValue; return(speckleMesh.ToNative()); }
public static DetailedBeam FromSpeckle(SpeckleBrep BaseObj) { return(new DetailedBeam()); }
public static GameObject ToNative(this SpeckleBrep brep) { var mesh = brep.DisplayValue; return mesh.ToNative(); }