Revit API 几何专题 2: 点 - Point

点 - Point

主要关注的是点与点点与向量向量与向量之间的关系。
Point 代表了点的概念,而点的表示,需要 XYZ
创建 Point

public static Point Create(
	XYZ coord
)

Point 的接口:

    public class Point : GeometryObject
    {
     
        public Reference Reference {
      get; }
        public XYZ Coord {
      get; }
        public static Point Create(XYZ coord, ElementId id);
        public static Point Create(XYZ coord);
    }

XYZ

和点相关的操作,主要在 XYZ。另外,XYZ 不仅表示点,也表示向量,所以向量相关的操作,也在 XYZ
XYZ 的接口包含了:

  1. 加减乘除
  2. 点的操作
  3. 向量操作
  4. 点与向量通用操作
  5. 常量

加减乘除

每种操作都有多重途径,基于当前实例或者使用静态方法。

public XYZ Add(XYZ source);
public XYZ Divide(double value);
public XYZ Multiply(double value);
public XYZ Subtract(XYZ source);

public static XYZ operator +(XYZ left, XYZ right);
public static XYZ operator -(XYZ source);
public static XYZ operator -(XYZ left, XYZ right);
public static XYZ operator *(double value, XYZ right);
public static XYZ operator *(XYZ left, double value);
public static XYZ operator /(XYZ left, double value);

点的操作

点与点的距离:

public double DistanceTo(XYZ source);

向量操作

相对于其他向量和平面的角度:

public double AngleOnPlaneTo(XYZ right, XYZ normal);
public double AngleTo(XYZ source);

叉乘与点乘:

public XYZ CrossProduct(XYZ source);
public double DotProduct(XYZ source);

向量其他基本操作:

public XYZ Negate(); // 反转
public XYZ Normalize(); // 正则化
public double TripleProduct(XYZ middle, XYZ right); // 叉乘再点乘

点与向量通用操作

public double GetLength();
public bool IsAlmostEqualTo(XYZ source);
public bool IsAlmostEqualTo(XYZ source, double tolerance);

常量

Zero 可用于表示原点,其它三个可以表示三个坐标轴方向。

    public static XYZ Zero {
      get; }
    public static XYZ BasisX {
      get; }
    public static XYZ BasisY {
      get; }
    public static XYZ BasisZ {
      get; }

你可能感兴趣的:(Revit,API,Revit,API,Geometry,专题)