diff --git a/Rhino/Speckle.Rhino.Api/IRhinoCurve.cs b/Rhino/Speckle.Rhino.Api/IRhinoCurve.cs index 243b523b..84a34b15 100644 --- a/Rhino/Speckle.Rhino.Api/IRhinoCurve.cs +++ b/Rhino/Speckle.Rhino.Api/IRhinoCurve.cs @@ -297,6 +297,9 @@ public partial interface IRhinoNurbsCurveProxy : IRhinoNurbsCurve; [Proxy(typeof(LineCurve), ImplementationOptions.UseExtendedInterfaces | ImplementationOptions.ProxyForBaseInterface)] public partial interface IRhinoLineCurveProxy : IRhinoLineCurve; +[Proxy(typeof(Transform), ImplementationOptions.UseExtendedInterfaces | ImplementationOptions.ProxyForBaseInterface)] +public partial interface IRhinoTransformProxy : IRhinoTransform; + [Proxy(typeof(Ellipse), ImplementationOptions.UseExtendedInterfaces | ImplementationOptions.ProxyForBaseInterface)] public partial interface IRhinoEllipseProxy : IRhinoEllipse; diff --git a/Rhino/Speckle.Rhino.Interfaces/IRhinoBoxFactory.cs b/Rhino/Speckle.Rhino.Interfaces/IRhinoBoxFactory.cs index b908aa5c..04071ad3 100644 --- a/Rhino/Speckle.Rhino.Interfaces/IRhinoBoxFactory.cs +++ b/Rhino/Speckle.Rhino.Interfaces/IRhinoBoxFactory.cs @@ -36,6 +36,11 @@ public interface IRhinoIntervalFactory { IRhinoInterval Create(double x, double y); } +public interface IRhinoTransformFactory +{ + IRhinoPoint3d Origin { get; } + IRhinoTransform Scale(IRhinoPoint3d origin, double y); +} public interface IRhinoCircleFactory { diff --git a/Rhino/Speckle.Rhino.Interfaces/RhinoCurve.cs b/Rhino/Speckle.Rhino.Interfaces/RhinoCurve.cs index 7a564a5f..5911c520 100644 --- a/Rhino/Speckle.Rhino.Interfaces/RhinoCurve.cs +++ b/Rhino/Speckle.Rhino.Interfaces/RhinoCurve.cs @@ -35,6 +35,7 @@ bool keepStartPoint public interface IRhinoGeometryBase : IRhinoCommonObject { IRhinoBoundingBox GetBoundingBox(bool val); + void Transform(IRhinoTransform transform); } public interface IRhinoCommonObject; @@ -124,6 +125,8 @@ public interface IRhinoBrep : IRhinoGeometryBase RhinoBrepSolidOrientation SolidOrientation { get; } } +public interface IRhinoTransform; + public interface IRhinoPoint : IRhinoGeometryBase { IRhinoPoint3d Location { get; } @@ -342,12 +345,10 @@ public interface IRhinoVector3d double Z { get; } } -public interface IRhinoPointCloud +public interface IRhinoPointCloud : IRhinoGeometryBase { IRhinoPoint3d[] GetPoints(); System.Drawing.Color[] GetColors(); - IRhinoBoundingBox GetBoundingBox(bool b); - IRhinoPointCloudItem this[int index] { get; } }