• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C# Point3类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中Point3的典型用法代码示例。如果您正苦于以下问题:C# Point3类的具体用法?C# Point3怎么用?C# Point3使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Point3类属于命名空间,在下文中一共展示了Point3类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: constructor_default

        public void constructor_default() {
            var p = new Point3();

            Assert.Equal(0, p.X);
            Assert.Equal(0, p.Y);
            Assert.Equal(0, p.Z);
        }
开发者ID:aarondandy,项目名称:vertesaur,代码行数:7,代码来源:Point3Facts.cs


示例2: CalculateHit

		public RenderItem CalculateHit (Ray ray, out double tHit, double maxT) {
			Point3 inter = new Point3(ray.Offset);
			double t = 0.0d;
			tHit = maxT;
			if(x0 > inter.X || inter.X > x1 || y0 > inter.Y || inter.Y > y1 || z0 > inter.Z || inter.Z > z1) {
				Utils.CalculateBoxHitpoint(ray, inter, out t, this.x0, this.x1, this.y0, this.y1, this.z0, this.z1);
				if(t >= tHit) {
					return null;
				}
			}
			RenderItem ri = null;
			double[] seqxyz = new double[] {
				Maths.SoftInv(ray.DX),
				Maths.SoftInv(ray.DY),
				Maths.SoftInv(ray.DZ),
				x0,
				x1,
				x1,
				y0,
				y1,
				y1,
				z0,
				z1,
				z1
			};
			int dpos = Maths.BinarySign(ray.DX)|(Maths.BinarySign(ray.DY)<<0x02)|(Maths.BinarySign(ray.DZ)<<0x04);
			proceedSubTree(ray, dpos, seqxyz, inter, ref ri, ref t, ref tHit, this.root);
			return ri;
		}
开发者ID:KommuSoft,项目名称:MoRen,代码行数:29,代码来源:OctTreeAccelerator.cs


示例3: GetBlock

 public static Voxel GetBlock(Point3 worldBlockCoord)
 {
     Chunk chunk = GetChunk(worldBlockCoord);
     return chunk != null
         ? chunk.Get(worldBlockCoord.ToLocalBlockCoord())
         : null;
 }
开发者ID:mandarinx,项目名称:buildahouse,代码行数:7,代码来源:ChunkManager.cs


示例4: Copy

 public void Copy(double t, Point3 norm, double tu, double tv)
 {
     this.T = t;
     this.Normal.SetValues(norm);
     this.TU.X = tu;
     this.TU.Y = tv;
 }
开发者ID:KommuSoft,项目名称:MoRen,代码行数:7,代码来源:CastResult.cs


示例5: Quadrilateral

        public Quadrilateral(Point3 TopLeftIn, Point3 TopRightIn, Point3 BottomLeftIn, Point3 BottomRightIn)
        {
            this.TopLeft = TopLeftIn;
            this.TopRight = TopRightIn;
            this.BottomLeft = BottomLeftIn;
            this.BottomRight = BottomRightIn;

            Plane3 plane = new Plane3(this.TopLeft, this.TopRight, this.BottomLeft);
            //Vector3 ab = new Vector3(new Segment3(this.BottomLeft, this.TopLeft));
            //Vector3 ac = new Vector3(new Segment3(this.BottomLeft, this.BottomRight));
            //Vector3 normal = Vector3.Cross(ab, ac);
            //Vector3 ad = new Vector3(new Segment3(this.BottomLeft, this.TopRight));
            //double dotp = Vector3.Dot(ad, normal);

            //PetrelLogger.InfoOutputWindow("The dot product of this cell's face is " + System.Convert.ToString(dotp));

            if (Plane3Extensions.Contains(plane,this.BottomRight, 1E-7))
            {
                LeftSegment = new Segment3(this.TopLeft, this.BottomLeft);
                RightSegment = new Segment3(this.TopRight, this.BottomRight);
                BottomSegment = new Segment3(this.BottomLeft, this.BottomRight);
                TopSegment = new Segment3(this.TopLeft, this.TopRight);

                CalculateCentroid();
            }
            else
            {   double x = (this.TopLeft.X + this.BottomLeft.X + this.TopRight.X + this.BottomRight.X) / 4.0;
                double y = (this.TopLeft.Y + this.BottomLeft.Y + this.TopRight.Y + this.BottomRight.Y) / 4.0;
                double z = (this.TopLeft.Z + this.BottomLeft.Z + this.TopRight.Z + this.BottomRight.Z) / 4.0;

                this.Centroid = new Point3(x,y,z);
            }
        }
开发者ID:walter-poquioma,项目名称:ModifiedKh,代码行数:33,代码来源:Quadrilateral.cs


示例6: coordinate_triple_coordinate_get_test

 public void coordinate_triple_coordinate_get_test() {
     ICoordinateTriple<double> p = new Point3(3, 4, 5);
     var a = new Vector3(p);
     Assert.Equal(3, a.X);
     Assert.Equal(4, a.Y);
     Assert.Equal(5, a.Z);
 }
开发者ID:aarondandy,项目名称:vertesaur,代码行数:7,代码来源:Vector3Facts.cs


示例7:

        bool IGeometryGeneratorSource.CanBuildSide(BlockData me, BlockData side, Point3 mePos, Point3 sidePos)
        {
            if (IsFence(side))
                return false;

            return !side.IsSolid;
        }
开发者ID:robot9706,项目名称:MinecraftModelExporter,代码行数:7,代码来源:Fence.cs


示例8: ProxyTriangle

 public ProxyTriangle(RenderItem t, Point3 pa, Point3 pb, Point3 pc)
     : base(t)
 {
     this.pa = pa;
     this.pb = pb;
     this.pc = pc;
 }
开发者ID:KommuSoft,项目名称:MoRen,代码行数:7,代码来源:ProxyTriangle.cs


示例9: Load

 public override void Load(string currentDir, string filename)
 {
     TreeNode<string> tree = filename.ParseTreeBracketsComma();
     if(tree.Count < 0x03) {
         pa = Point3.DummyPoint;
         pb = Point3.DummyXPoint;
         pc = Point3.DummyYPoint;
     }
     else {
         pa = Point3.Parse(tree[0x00].ChildDatas);
         pb = Point3.Parse(tree[0x01].ChildDatas);
         pc = Point3.Parse(tree[0x02].ChildDatas);
     }
     if(tree.Count >= 0x06) {
         na = Point3.Parse(tree[0x03].ChildDatas);
         nb = Point3.Parse(tree[0x04].ChildDatas);
         nc = Point3.Parse(tree[0x05].ChildDatas);
     }
     if(tree.Count >= 0x09) {
         ta = Point3.Parse(tree[0x06].ChildDatas);
         tb = Point3.Parse(tree[0x07].ChildDatas);
         tc = Point3.Parse(tree[0x08].ChildDatas);
     }
     else {
         ta = Point3.DummyYPoint;
         tb = Point3.DummyPoint;
         tc = Point3.DummyXPoint;
     }
 }
开发者ID:KommuSoft,项目名称:MoRen,代码行数:29,代码来源:TriangleLoader.cs


示例10: Multiply

 /// <summary>
 /// Multiplies the point by the specified matrix.
 /// </summary>
 internal static Point3 Multiply(Matrix m, Point3 p)
 {
     return new Point3(
         m.m11 * p.X + m.m12 * p.Y + m.m13 * p.Z,
         m.m21 * p.X + m.m22 * p.Y + m.m23 * p.Z,
         m.m31 * p.X + m.m32 * p.Y + m.m33 * p.Z);
 }
开发者ID:Kyle0654,项目名称:Portal2.Puzzle,代码行数:10,代码来源:Matrix.cs


示例11: CreatingPolyLineListWhenWellHasPerforations

        public static List<IPolyline3> CreatingPolyLineListWhenWellHasPerforations(Borehole bh)
        {
            List<IPolyline3> plineList = new List<IPolyline3>();

            foreach (Perforation prf in bh.Completions.Perforations)
            {
                double x1 = bh.Transform(Domain.MD, prf.StartMD, Domain.X);
                double y1 = bh.Transform(Domain.MD, prf.StartMD, Domain.Y);
                double z1 = bh.Transform(Domain.MD, prf.StartMD, Domain.ELEVATION_DEPTH);

                List<Point3> ptsList = new List<Point3>();
                Point3 pt3_1 = new Point3(x1, y1, z1);
                ptsList.Add(pt3_1);

                double x2 = bh.Transform(Domain.MD, prf.EndMD, Domain.X);
                double y2 = bh.Transform(Domain.MD, prf.EndMD, Domain.Y);
                double z2 = bh.Transform(Domain.MD, prf.EndMD, Domain.ELEVATION_DEPTH);

                Point3 pt3_2 = new Point3(x2, y2, z2);

                double xmiddle = (x1 + x2)/2;
                double ymiddle = (y1 + y2) / 2;
                double zmiddle = (z1 + z2) / 2;

                Point3 pt3_3 = new Point3(xmiddle, ymiddle, zmiddle);
                ptsList.Add(pt3_3);
                ptsList.Add(pt3_2);

                IPolyline3 pline = new Polyline3(ptsList);

                plineList.Add(pline);
            }

            return plineList;
        }
开发者ID:walter-poquioma,项目名称:ModifiedKh,代码行数:35,代码来源:KandaIntersectionService.cs


示例12: AddBlock

 public Voxel AddBlock(Point3 localBlockCoord)
 {
     voxels[localBlockCoord.x,
            localBlockCoord.y,
            localBlockCoord.z] = new Voxel();
     return Get(localBlockCoord);
 }
开发者ID:mandarinx,项目名称:buildahouse,代码行数:7,代码来源:Chunk.cs


示例13: CalculateHit

 public RenderItem CalculateHit(Ray ray, out double tHit, double maxT)
 {
     Point3 inter = new Point3(ray.Offset);
     tHit = maxT;
     double t = 0.0d;
     if(x0 > inter.X || inter.X > x1 || y0 > inter.Y || inter.Y > y1 || z0 > inter.Z || inter.Z > z1) {
         Utils.CalculateBoxHitpoint(ray, inter, out t, this.x0, this.x1, this.y0, this.y1, this.z0, this.z1);
         if(t > maxT) {
             return null;
         }
     }
     Point3 inter2 = new Point3(Maths.ZeroInv(ray.DX), Maths.ZeroInv(ray.DY), Maths.ZeroInv(ray.DZ));
     double tt = Maths.SoftInv(ray.DX)*(box[Maths.BinarySign(ray.DX)]-ray.X0);
     if(tt < tHit) {
         tHit = tt;
     }
     tt = Maths.SoftInv(ray.DY)*(box[Maths.BinarySign(ray.DY)+0x02]-ray.Y0);
     if(tt < tHit) {
         tHit = tt;
     }
     tt = Maths.SoftInv(ray.DZ)*(box[Maths.BinarySign(ray.DZ)+0x04]-ray.Z0);
     if(tt < tHit) {
         tHit = tt;
     }
     RenderItem ri = null;
     this.root.Hit(ray, inter2, inter, ref t, ref tHit, ref ri);
     return ri;
 }
开发者ID:KommuSoft,项目名称:MoRen,代码行数:28,代码来源:BinarySpacePartitionAccelerator.cs


示例14: constructor_coordinates

        public void constructor_coordinates() {
            var p = new Point3(1, 2, 3);

            Assert.Equal(1, p.X);
            Assert.Equal(2, p.Y);
            Assert.Equal(3, p.Z);
        }
开发者ID:aarondandy,项目名称:vertesaur,代码行数:7,代码来源:Point3Facts.cs


示例15: GetCornerSet

        //public static Slb.Ocean.Petrel.DomainObject.PillarGrid.Zone GetZone(Index3 cellIndex, List<Slb.Ocean.Petrel.DomainObject.PillarGrid.Zone> Zones)//List<Slb.Ocean.Petrel.DomainObject.PillarGrid.Zone> TopZone)
        //{
        //    foreach (Slb.Ocean.Petrel.DomainObject.PillarGrid.Zone zone in Zones)
        //    {
        //        if (cellIndex.K > zone.BaseK && cellIndex.K)
        //       {
        //       }
        //    }
        //}
        public static Point3[] GetCornerSet(CellSide SideOfCell, Grid gridInContext, Index3 CellIndex)
        {
            CellCorner[] CellCorners = new CellCorner[4];
            Point3[] CellCornerPoints = new Point3[4];

            switch (SideOfCell)
            {
                case CellSide.Up:
                    CellCorners[0] = CellCorner.TopNorthWest; CellCorners[1] = CellCorner.TopNorthEast; CellCorners[2] = CellCorner.TopSouthWest;
                    CellCorners[3] = CellCorner.TopSouthEast;
                    CellCornerPoints = gridInContext.GetCellCorners(CellIndex, CellCorners);

                    break;

                case CellSide.East:
                    CellCorners[0] = CellCorner.TopSouthEast; CellCorners[1] = CellCorner.TopNorthEast; CellCorners[2] = CellCorner.BaseSouthEast;
                    CellCorners[3] = CellCorner.BaseNorthEast;
                    CellCornerPoints = gridInContext.GetCellCorners(CellIndex, CellCorners);

                    break;

                case CellSide.West:

                    CellCorners[0] = CellCorner.TopSouthWest; CellCorners[1] = CellCorner.TopNorthWest; CellCorners[2] = CellCorner.BaseSouthWest;
                    CellCorners[3] = CellCorner.BaseNorthWest;
                    CellCornerPoints = gridInContext.GetCellCorners(CellIndex, CellCorners);

                    break;

                case CellSide.South:
                    CellCorners[0] = CellCorner.TopSouthWest; CellCorners[1] = CellCorner.TopSouthEast; CellCorners[2] = CellCorner.BaseSouthWest;
                    CellCorners[3] = CellCorner.BaseSouthEast;
                    CellCornerPoints = gridInContext.GetCellCorners(CellIndex, CellCorners);

                    break;

                case CellSide.North:

                    CellCorners[0] = CellCorner.TopNorthWest; CellCorners[1] = CellCorner.TopNorthEast; CellCorners[2] = CellCorner.BaseNorthWest;
                    CellCorners[3] = CellCorner.BaseNorthEast;
                    CellCornerPoints = gridInContext.GetCellCorners(CellIndex, CellCorners);

                    break;

                case CellSide.Down:

                    CellCorners[0] = CellCorner.BaseNorthWest; CellCorners[1] = CellCorner.BaseNorthEast; CellCorners[2] = CellCorner.BaseSouthWest;
                    CellCorners[3] = CellCorner.BaseSouthEast;
                    CellCornerPoints = gridInContext.GetCellCorners(CellIndex, CellCorners);

                    break;
                default:

                    CellCornerPoints = null;
                    break;
            }

            return CellCornerPoints;
        }
开发者ID:walter-poquioma,项目名称:ModifiedKh,代码行数:68,代码来源:KandaIntersectionService.cs


示例16: GenerateModel

        public override List<CustomBlockData> GenerateModel(byte metadata, BlockData me, BlockData Xpos, BlockData Xneg, BlockData Ypos, BlockData Yneg, BlockData Zpos, BlockData Zneg, BlockSource source, Point3 blockPosition)
        {
            List<CustomBlockData> dat = new List<CustomBlockData>();

            float s = 0.707f;
            Vector3 d = new Vector3(-0.02f, 0, -0.02f);

            dat.Add(new CustomBlockData()
            {
                Vertex1 = new Vector3(0, s, 0) - d,
                Vertex2 = new Vector3(s, s, s) - d,
                Vertex3 = new Vector3(s, 0, s) - d,
                Vertex4 = new Vector3(0, 0, 0) - d,

                Normal = new Vector3(1, 0, 1),
                Texture = Textures.GetTexturesForMetadata(metadata)[0]
            }.CreateUVsYFlipped());

            dat.Add(new CustomBlockData()
            {
                Vertex1 = new Vector3(0, s, 0) - d,
                Vertex2 = new Vector3(s, s, s) - d,
                Vertex3 = new Vector3(s, 0, s) - d,
                Vertex4 = new Vector3(0, 0, 0) - d,

                TriFlip = true,

                Normal = new Vector3(-1, 0, -1),
                Texture = Textures.GetTexturesForMetadata(metadata)[0]
            }.CreateUVsYFlipped());

            dat.Add(new CustomBlockData()
            {
                Vertex1 = new Vector3(s, s, 0),
                Vertex2 = new Vector3(0, s, s),
                Vertex3 = new Vector3(0, 0, s),
                Vertex4 = new Vector3(s, 0, 0),

                TriFlip = true,

                Normal = new Vector3(-1, 0, 1),
                Texture = Textures.GetTexturesForMetadata(metadata)[0]
            }.CreateUVsYFlipped());

            dat.Add(new CustomBlockData()
            {
                Vertex1 = new Vector3(s, s, 0),
                Vertex2 = new Vector3(0, s, s),
                Vertex3 = new Vector3(0, 0, s),
                Vertex4 = new Vector3(s, 0, 0),

                TriFlip = true,

                Normal = new Vector3(1, 0, -1),
                Texture = Textures.GetTexturesForMetadata(metadata)[0]
            }.CreateUVsYFlipped());

            return dat;
        }
开发者ID:robot9706,项目名称:MinecraftModelExporter,代码行数:59,代码来源:TallGrass.cs


示例17: Step

 /// <summary>
 /// Copies the end position in the start position, updates the current position
 /// </summary>
 public void Step( long curTime )
 {
     m_Start				= m_End;
     m_End				= new Point3( m_End );
     m_LastStepInterval	= ( curTime - m_LastStepTime );
     m_LastStepTime		= curTime;
     UpdateCurrent( curTime );
 }
开发者ID:johann-gambolputty,项目名称:robotbastards,代码行数:11,代码来源:Point3Interpolator.cs


示例18: Creeper

        public Creeper(Point3 pos, World level)
        {
            mye = new Entity(this, level);
            mylevel = level;
            e.pos = pos;

            e.UpdateChunks(false, false);
        }
开发者ID:TaFinalDestination,项目名称:ForgeCraft,代码行数:8,代码来源:Creeper.cs


示例19: VoxelListener

 public VoxelListener(ComponentManager manager, GameComponent parent, ChunkManager chunkManager, Voxel vref)
     : base("VoxelListener", parent)
 {
     Chunk = vref.Chunk;
     VoxelID = new Point3(vref.GridPosition);
     Chunk.OnVoxelDestroyed += VoxelListener_OnVoxelDestroyed;
     ChunkID = Chunk.ID;
 }
开发者ID:scorvi,项目名称:dwarfcorp,代码行数:8,代码来源:VoxelListener.cs


示例20: SecondaryObservationRoom

        public SecondaryObservationRoom(Puzzle owner) : base(owner)
        {
            defaultRight = Direction.Y;

            Type = TypeName;
            deletable = true;
            angles = new Point3(-90, 0, 0);
        }
开发者ID:Kyle0654,项目名称:Portal2.Puzzle,代码行数:8,代码来源:SecondaryObservationRoom.cs



注:本文中的Point3类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# Point3D类代码示例发布时间:2022-05-24
下一篇:
C# Point2f类代码示例发布时间:2022-05-24
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap