Beispiel #1
0
            public Sphere(double[] centre, double radius) : base()
            {
                udGeometryDouble3 c = new udGeometryDouble3();

                c.x = centre[0];
                c.y = centre[1];
                c.z = centre[2];
                udGeometry_InitSphere(pGeometry, c, radius);
            }
Beispiel #2
0
            public Capsule(double[] point1, double[] point2, double r) : base()
            {
                udGeometryDouble3 c = new udGeometryDouble3();

                c.x = point1[0];
                c.y = point1[1];
                c.z = point1[2];
                udGeometryDouble3 e = new udGeometryDouble3();

                e.x = point2[0];
                e.y = point2[1];
                e.z = point2[2];
                udGeometry_InitCapsule(pGeometry, c, e, r);
            }
Beispiel #3
0
            public HalfSpace(double[] centre, double[] extents) : base()
            {
                udGeometryDouble3 c = new udGeometryDouble3();

                c.x = centre[0];
                c.y = centre[1];
                c.z = centre[2];
                udGeometryDouble3 e = new udGeometryDouble3();

                e.x = extents[0];
                e.y = extents[1];
                e.z = extents[2];
                udGeometry_InitHalfSpace(pGeometry, c, e);
            }
Beispiel #4
0
            public static AxisAlignedBoundingBox FromCentreExtents(double[] centre, double[] extents)
            {
                udGeometryDouble3 minC = new udGeometryDouble3();

                minC.x = centre[0];
                minC.y = centre[1];
                minC.z = centre[2];
                udGeometryDouble3 maxC = new udGeometryDouble3();

                maxC.x = extents[0];
                maxC.y = extents[1];
                maxC.z = extents[2];
                AxisAlignedBoundingBox ret = new AxisAlignedBoundingBox();

                udGeometry_InitAABBFromCentreExtents(ret.pGeometry, minC, maxC);
                return(ret);
            }
Beispiel #5
0
            public static AxisAlignedBoundingBox FromMinMax(double[] min, double[] max)
            {
                udGeometryDouble3 minC = new udGeometryDouble3();

                minC.x = min[0];
                minC.y = min[1];
                minC.z = min[2];
                udGeometryDouble3 maxC = new udGeometryDouble3();

                maxC.x = max[0];
                maxC.y = max[1];
                maxC.z = max[2];
                AxisAlignedBoundingBox ret = new AxisAlignedBoundingBox();

                udGeometry_InitAABBFromMinMax(ret.pGeometry, minC, maxC);
                return(ret);
            }
Beispiel #6
0
            public OrientedBoundingBox(double[] centre, double[] extents, double[] rotations) : base()
            {
                udGeometryDouble3 c = new udGeometryDouble3();

                c.x = centre[0];
                c.y = centre[1];
                c.z = centre[2];
                udGeometryDouble3 e = new udGeometryDouble3();

                e.x = extents[0];
                e.y = extents[1];
                e.z = extents[2];
                udGeometryDouble3 r = new udGeometryDouble3();

                r.x = rotations[0];
                r.y = rotations[1];
                r.z = rotations[2];
                udGeometry_InitOBB(pGeometry, c, e, r);
            }
Beispiel #7
0
 private static extern void udGeometry_InitCapsule(IntPtr pGeometry, udGeometryDouble3 point1, udGeometryDouble3 point2, double radius);
Beispiel #8
0
 private static extern void udGeometry_InitHalfSpace(IntPtr pGeometry, udGeometryDouble3 point, udGeometryDouble3 normal);
Beispiel #9
0
 private static extern void udGeometry_InitAABBFromCentreExtents(IntPtr pGeometry, udGeometryDouble3 centre, udGeometryDouble3 extents);
Beispiel #10
0
 private static extern void udGeometry_InitAABBFromMinMax(IntPtr pGeometry, udGeometryDouble3 point1, udGeometryDouble3 point2);
Beispiel #11
0
 private static extern void udGeometry_InitSphere(IntPtr pGeometry, udGeometryDouble3 center, double radius);
Beispiel #12
0
 private static extern void udGeometry_InitOBB(IntPtr pGeometry, udGeometryDouble3 centerPoint, udGeometryDouble3 extents, udGeometryDouble3 rotations);
Beispiel #13
0
 private static extern void udGeometry_InitCylinderFromCenterAndHeight(IntPtr pGeometry, udGeometryDouble3 centre, double radius, double halfHeight, udGeometryDouble3 yawPitchRoll);
Beispiel #14
0
 private static extern void udGeometry_InitCylinderFromEndPoints(IntPtr pGeometry, udGeometryDouble3 point1, udGeometryDouble3 point2, double radius);