GeometryPrimitiveConverter.cs
La classe GeometryPrimitiveConverter de la bibliothèque de codes de DynamoRevit propose différentes méthodes de conversion entre les types géométriques Revit et Dynamo. Ces méthodes sont utiles pour travailler avec la géométrie dans des scripts Dynamo qui interagissent avec des modèles Revit.
Les méthodes de GeometryPrimitiveConverter.cs
peuvent être regroupées en quatre catégories principales :
Types Proto à Revit : méthodes qui convertissent les types Dynamo (Proto) en types Revit.
Types Revit à Proto : méthodes qui convertissent les types Revit en types Dynamo (Proto).
Degrés et radians : méthodes qui convertissent entre degrés et radians.
X et UZ : méthodes qui traitent de l’obtention de vecteurs perpendiculaires.
Crée une zone Revit BoundingBoxXYZ à partir d’un système de coordonnées Dynamo et de deux points de définition (minimum et maximum).
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)
Convertit une zone Dynamo BoundingBox en zone Revit BoundingBoxXYZ.
L’indicateur convertUnits (true par défaut) détermine si les coordonnées doivent être converties du système d’unités de Dynamo en unités internes de Revit.
public static Autodesk.Revit.DB.BoundingBoxXYZ ToRevitType(this Autodesk.DesignScript.Geometry.BoundingBox bb, bool convertUnits = true)
Convertit un Dynamo Point en Revit XYZ.
L’indicateur convertUnits (true par défaut) convertit les coordonnées si nécessaire.
public static Autodesk.Revit.DB.XYZ ToRevitType(this Autodesk.DesignScript.Geometry.Point pt, bool convertUnits = true)
Convertit un vecteur Dynamo Vector en Revit XYZ.
Notez que l’indicateur convertUnits est défini par défaut sur false, car les vecteurs représentent la direction et la magnitude, qui ne nécessitent généralement pas de conversion d’unités. La conversion peut avoir une incidence sur la direction et la longueur du vecteur.
public static Autodesk.Revit.DB.XYZ ToRevitType(this Vector vec, bool convertUnits = false)
Convertit un Dynamo Point en Revit XYZ.
public static Autodesk.Revit.DB.XYZ ToXyz(this Autodesk.DesignScript.Geometry.Point pt, bool convertUnits = true)
Convertit un vecteur Dynamo Vector en Revit XYZ.
Notez que l’indicateur convertUnits est défini par défaut sur false, car les vecteurs représentent la direction et la magnitude, qui ne nécessitent généralement pas de conversion d’unités. La conversion peut avoir une incidence sur la direction et la longueur du vecteur.
public static Autodesk.Revit.DB.XYZ ToXyz(this Vector vec, bool convertUnits = false)
Convertit un système Dynamo CoordinateSystem en transformation Revit Transform.
public static Autodesk.Revit.DB.Transform ToTransform(this CoordinateSystem cs, bool convertUnits = true)
Convertit un plan Dynamo Plane en Revit Plane.
public static Autodesk.Revit.DB.Plane ToPlane(this Autodesk.DesignScript.Geometry.Plane plane, bool convertUnits = true)
Convertit les collections d’objets Dynamo Point en collections Revit XYZ.
Renvoie une liste de XYZ. public static List<XYZ> ToXyzs(this List<Autodesk.DesignScript.Geometry.Point> list, bool convertUnits = true)
Renvoie un tableau de XYZ. public static XYZ[] ToXyzs(this Autodesk.DesignScript.Geometry.Point[] list, bool convertUnits = true)
Convertit un tableau d’objets Dynamo Vector en tableau de vecteurs Revit XYZ.
public static XYZ[] ToXyzs(this Autodesk.DesignScript.Geometry.Vector[] list, bool convertUnits = false)
Convertit un tableau de valeurs doubles en DoubleArray de Revit.
public static DoubleArray ToDoubleArray(this double[] list)
Convertit un tableau à deux dimensions (double[][]), où chaque tableau interne représente une paire de valeurs (U et V) en un tableau d’objets Revit UV.
internal static Autodesk.Revit.DB.UV[] ToUvs(this double[][] uvArr)
Convertit un tableau à deux dimensions (double[][]), où chaque tableau interne représente une paire de valeurs (U et V) en un tableau d’objets Dynamo UV.
internal static Autodesk.DesignScript.Geometry.UV[] ToDSUvs(this double[][] uvArr)
Cet exemple illustre une façon simple et rapide d’utiliser la méthode .ToXyz (Point) pour convertir un système Dynamo Point.ByCoordinates en Revit XYZ.
Convertit une zone Revit BoundingBoxXYZ en zone Dynamo BoundingBox.
public static Autodesk.DesignScript.Geometry.BoundingBox ToProtoType(this Autodesk.Revit.DB.BoundingBoxXYZ xyz, bool convertUnits = true)
Convertit un Revit XYZ en Dynamo Point.
public static Autodesk.DesignScript.Geometry.Point ToPoint(this XYZ xyz, bool convertUnits = true)
Convertit un Revit Point en Dynamo Point.
public static Autodesk.DesignScript.Geometry.Point ToProtoType(this Autodesk.Revit.DB.Point point, bool convertUnits = true)
Convertit un Revit XYZ en Dynamo Vector.
public static Vector ToVector(this XYZ xyz, bool convertUnits = false)
Convertit un Revit UV en Dynamo UV.
public static Autodesk.DesignScript.Geometry.UV ToProtoType(this Autodesk.Revit.DB.UV uv)
Convertit un plan Revit Plane en Dynamo Plane.
public static Autodesk.DesignScript.Geometry.Plane ToPlane(this Autodesk.Revit.DB.Plane plane, bool convertUnits = true)
Convertit une transformation Revit Transform en Dynamo CoordinateSystem.
public static CoordinateSystem ToCoordinateSystem(this Transform t, bool convertUnits = true)
Convertit une liste de points Revit XYZ en liste de points Dynamo Point.
public static List<Autodesk.DesignScript.Geometry.Point> ToPoints(this List<XYZ> list, bool convertUnits = true)
Cet exemple illustre une façon simple et rapide d’utiliser la méthode .ToPoint (XYZ) pour convertir un Revit XYZ en point Dynamo Point.
Convertit les degrés en radians.
public static double ToRadians(this double degrees) { return degrees * Math.PI / 180.0; }
Convertit les radians en degrés.
public static double ToDegrees(this double degrees) { return degrees * 180.0 / Math.PI; }
Cet exemple illustre une façon simple et rapide d’utiliser la méthode .ToRadians pour effectuer une conversion de degrés en radians.
Cette méthode renvoie un vecteur XYZ
perpendiculaire au vecteur XYZ
donné.
public static XYZ GetPerpendicular(this XYZ xyz)
Cette méthode renvoie un vecteur Dynamo Vector
perpendiculaire au vecteur Dynamo Vector
donné.
public static Vector GetPerpendicular(this Vector vector)
Cet exemple illustre une façon simple et rapide d’utiliser la méthode .GetPerpendicular pour obtenir le vecteur perpendiculaire à un vecteur d’entrée.