GeometryPrimitiveConverter.cs
La classe GeometryPrimitiveConverter nella libreria di codici di DynamoRevit fornisce vari metodi per convertire i tipi geometrici tra Revit e Dynamo. Questi metodi sono utili quando si utilizza la geometria negli script di Dynamo che interagiscono con i modelli di Revit.
I metodi in GeometryPrimitiveConverter.cs
possono essere raggruppati in quattro categorie principali:
Da prototipi a tipi di Revit: metodi che convertono i tipi di Dynamo (prototipi) in tipi di Revit.
Da tipi di Revit a prototipi: metodi che convertono i tipi di Revit in tipi di Dynamo (prototipi).
Gradi e radianti: metodi che eseguono la conversione tra gradi e radianti.
X e UZ: metodi che consentono di ottenere vettori perpendicolari.
Crea BoundingBoxXYZ di Revit da un sistema di coordinate di Dynamo e due punti di definizione (minimo e massimo).
public static Autodesk.Revit.DB.BoundingBoxXYZ ToRevitBoundingBox( Autodesk.DesignScript.Geometry.CoordinateSystem cs, Autodesk.DesignScript.Geometry.Point minPoint, Autodesk.DesignScript.Geometry.Point maxPoint, bool convertUnits = true)
Converte BoundingBox di Dynamo in BoundingBoxXYZ di Revit.
Il flag convertUnits (per default, impostato su true) determina se le coordinate devono essere convertite dal sistema di unità di misura di Dynamo nelle unità interne di Revit.
public static Autodesk.Revit.DB.BoundingBoxXYZ ToRevitType(this Autodesk.DesignScript.Geometry.BoundingBox bb, bool convertUnits = true)
Converte un punto di Dynamo in una coordinata XYZ di Revit.
Se necessario, il flag convertUnits (per default, impostato su true) converte le coordinate.
public static Autodesk.Revit.DB.XYZ ToRevitType(this Autodesk.DesignScript.Geometry.Point pt, bool convertUnits = true)
Converte un vettore di Dynamo in una coordinata XYZ di Revit.
Notare che, per default, il flag convertUnits è impostato su false poiché i vettori rappresentano la direzione e l'intensità, che in genere non richiedono la conversione delle unità. La conversione potrebbe influenzare la direzione e la lunghezza del vettore.
public static Autodesk.Revit.DB.XYZ ToRevitType(this Vector vec, bool convertUnits = false)
Converte un punto di Dynamo in una coordinata XYZ di Revit.
public static Autodesk.Revit.DB.XYZ ToXyz(this Autodesk.DesignScript.Geometry.Point pt, bool convertUnits = true)
Converte un vettore di Dynamo in una coordinata XYZ di Revit.
Notare che, per default, il flag convertUnits è impostato su false poiché i vettori rappresentano la direzione e l'intensità, che in genere non richiedono la conversione delle unità. La conversione potrebbe influenzare la direzione e la lunghezza del vettore.
public static Autodesk.Revit.DB.XYZ ToXyz(this Vector vec, bool convertUnits = false)
Converte CoordinateSystem di Dynamo in una trasformazione di Revit.
public static Autodesk.Revit.DB.Transform ToTransform(this CoordinateSystem cs, bool convertUnits = true)
Converte un piano di Dynamo in un piano di Revit.
public static Autodesk.Revit.DB.Plane ToPlane(this Autodesk.DesignScript.Geometry.Plane plane, bool convertUnits = true)
Converte le raccolte di oggetti punto di Dynamo in raccolte di coordinate XYZ di Revit.
Restituisce un elenco di coordinate XYZ. public static List<XYZ> ToXyzs(this List<Autodesk.DesignScript.Geometry.Point> list, bool convertUnits = true)
Restituisce una matrice di coordinate XYZ. public static XYZ[] ToXyzs(this Autodesk.DesignScript.Geometry.Point[] list, bool convertUnits = true)
Converte una matrice di oggetti vettore di Dynamo in una matrice di vettori XYZ di Revit.
public static XYZ[] ToXyzs(this Autodesk.DesignScript.Geometry.Vector[] list, bool convertUnits = false)
Converte una matrice di valori double in DoubleArray di Revit.
public static DoubleArray ToDoubleArray(this double[] list)
Converte una matrice bidimensionale (double[][]) in cui ogni matrice interna rappresenta una coppia di valori (U e V) in una matrice di oggetti UV di Revit.
internal static Autodesk.Revit.DB.UV[] ToUvs(this double[][] uvArr)
Converte una matrice bidimensionale (double[][]) in cui ogni matrice interna rappresenta una coppia di valori (U e V) in una matrice di oggetti UV di Dynamo.
internal static Autodesk.DesignScript.Geometry.UV[] ToDSUvs(this double[][] uvArr)
In questo esempio viene illustrato un modo semplice e rapido per utilizzare il metodo ToXyz (Point) per convertire Point.ByCoordinates di Dynamo in una coordinata XYZ di Revit.
Converte BoundingBoxXYZ di Revit in BoundingBox di Dynamo.
public static Autodesk.DesignScript.Geometry.BoundingBox ToProtoType(this Autodesk.Revit.DB.BoundingBoxXYZ xyz, bool convertUnits = true)
Converte una coordinata XYZ di Revit in un punto di Dynamo.
public static Autodesk.DesignScript.Geometry.Point ToPoint(this XYZ xyz, bool convertUnits = true)
Converte un punto di Revit in un punto di Dynamo.
public static Autodesk.DesignScript.Geometry.Point ToProtoType(this Autodesk.Revit.DB.Point point, bool convertUnits = true)
Converte una coordinata XYZ di Revit in un vettore di Dynamo.
public static Vector ToVector(this XYZ xyz, bool convertUnits = false)
Converte un valore UV di Revit in un valore UV di Dynamo.
public static Autodesk.DesignScript.Geometry.UV ToProtoType(this Autodesk.Revit.DB.UV uv)
Converte un piano di Revit in un piano di Dynamo.
public static Autodesk.DesignScript.Geometry.Plane ToPlane(this Autodesk.Revit.DB.Plane plane, bool convertUnits = true)
Converte una trasformazione di Revit in CoordinateSystem di Dynamo.
public static CoordinateSystem ToCoordinateSystem(this Transform t, bool convertUnits = true)
Converte un elenco di punti XYZ di Revit in un elenco di punti di Dynamo.
public static List<Autodesk.DesignScript.Geometry.Point> ToPoints(this List<XYZ> list, bool convertUnits = true)
In questo esempio viene illustrato un modo semplice e rapido per utilizzare il metodo ToPoint (XYZ) per convertire una coordinata XYZ di Revit in un punto di Dynamo.
Converte i gradi in radianti.
public static double ToRadians(this double degrees) { return degrees * Math.PI / 180.0; }
Converte i radianti in gradi.
public static double ToDegrees(this double degrees) { return degrees * 180.0 / Math.PI; }
In questo esempio viene illustrato un modo semplice e rapido per utilizzare il metodo ToRadians per convertire i gradi in radianti.
Questo metodo restituisce un vettore XYZ
perpendicolare al vettore XYZ
specificato.
public static XYZ GetPerpendicular(this XYZ xyz)
Questo metodo restituisce Vector
di Dynamo perpendicolare a Vector
di Dynamo specificato.
public static Vector GetPerpendicular(this Vector vector)
In questo esempio viene illustrato un modo semplice e rapido per utilizzare il metodo GetPerpendicular per ottenere il vettore perpendicolare ad un vettore di input.