コード例 #1
0
ファイル: GePlane.cs プロジェクト: JeffreyZksun/opendraw
 public GePlane(PlaneAdaptor proxy)
 {
     m_Proxy = proxy;
 }
コード例 #2
0
 public override PointAdaptor GetIntersection(PlaneAdaptor planeProxy)
 {
     Debug.Assert(false, "NO IMP");
     return null;
 }
コード例 #3
0
ファイル: GePlane.cs プロジェクト: JeffreyZksun/opendraw
 public GePlane(GePoint point, UnitVector Normal)
 {
     Debug.Assert(point != null && Normal != null);
     m_Proxy = MathAdaptorFactory.Instance.CreatePlaneAdaptor(point._Proxy, Normal._Proxy);
 }
コード例 #4
0
ファイル: PointAdaptor.cs プロジェクト: JeffreyZksun/opendraw
        public bool IsOn(PlaneAdaptor Plane)
        {
            if (null == Plane) return false;

            return Plane.Contains(this);
        }
コード例 #5
0
ファイル: PointAdaptor.cs プロジェクト: JeffreyZksun/opendraw
        // The shortest distance of point to plane.
        public double DistanceTo(PlaneAdaptor planeProxy)
        {
            Debug.Assert(planeProxy != null);

            return planeProxy.DistanceTo(this);
        }
コード例 #6
0
ファイル: LineAdaptor.cs プロジェクト: JeffreyZksun/opendraw
        public bool IsParallelTo(PlaneAdaptor Plane)
        {
            if (null == Plane) return false;

            return (Direction.IsPerpendicularTo(Plane.Normal));
        }
コード例 #7
0
ファイル: LineAdaptor.cs プロジェクト: JeffreyZksun/opendraw
 public abstract PointAdaptor GetIntersection(PlaneAdaptor planeProxy);
コード例 #8
0
ファイル: LineAdaptor.cs プロジェクト: JeffreyZksun/opendraw
        // The shortest distance of line to plane.
        public double DistanceTo(PlaneAdaptor plane)
        {
            Debug.Assert(plane != null);

            if (!IsParallelTo(plane))
                return 0.0;
            else
            {
                double distance = BasePoint.DistanceTo(plane);
                return distance;
            }
        }