当前位置: 首页>>代码示例>>C#>>正文


C# Feature.setGeometry方法代码示例

本文整理汇总了C#中Feature.setGeometry方法的典型用法代码示例。如果您正苦于以下问题:C# Feature.setGeometry方法的具体用法?C# Feature.setGeometry怎么用?C# Feature.setGeometry使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Feature的用法示例。


在下文中一共展示了Feature.setGeometry方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: ribbonButton51_Click

        private void ribbonButton51_Click(object sender, EventArgs e)
        {
            if (featurePrimitiveLineString == null)
            {
                LineStringGeometry lineString = new LineStringGeometry();
                Vec3d vec3d1 = new Vec3d();
                vec3d1.set(-74, 40.714, 0);
                Vec3d vec3d2 = new Vec3d();
                vec3d2.set(139.75, 35.68, 0);
                lineString.push_back(vec3d1);
                lineString.push_back(vec3d2);

                Feature feature = new Feature();
                feature.setGeometry( lineString );
                featurePrimitiveLineString = new FeaturePrimitive();
                featurePrimitiveLineString.setFeature( feature );
                m_earthRoot.addChild( featurePrimitiveLineString );
            }
        }
开发者ID:wlhm1984,项目名称:osgEarthX,代码行数:19,代码来源:MainForm.cs

示例2: ribbonButton53_Click

        private void ribbonButton53_Click(object sender, EventArgs e)
        {
            if (featurePolygon == null)
            {
                Vec3d vec1 = new Vec3d();
                vec1.set(0, 40, 0);
                Vec3d vec2 = new Vec3d();
                vec2.set(-60, 40, 0);
                Vec3d vec3 = new Vec3d();
                vec3.set(-60, 60, 0);
                Vec3d vec4 = new Vec3d();
                vec4.set( 0, 60, 0 );

                PolygonGeometry polygon = new PolygonGeometry();
                polygon.push_back( vec1 );
                polygon.push_back( vec2 );
                polygon.push_back( vec3 );
                polygon.push_back( vec4 );
                Feature feature = new Feature();
                feature.setGeometry(polygon);
                featurePolygon = new FeaturePrimitive();
                featurePolygon.setFeature( feature );
                m_earthRoot.addChild( featurePolygon );
            }
        }
开发者ID:wlhm1984,项目名称:osgEarthX,代码行数:25,代码来源:MainForm.cs

示例3: process

        override public FeatureList process(Feature input, FilterEnv env)
        {
            FeatureList output = new FeatureList();

            //resolve the xlate shortcut
            Mogre.Matrix4 workingMatrix = Matrix;

            //TODO: this can go into process (FeatureList) instead of running for every feature..
            if (TranslateScript != null)
            {
                ScriptResult r = env.getScriptEngine().run(TranslateScript, input, env);
                if (r.isValid())
                {
                    workingMatrix.MakeTrans(new Mogre.Vector3((float)r.asVec3().x, (float)r.asVec3().y, (float)r.asVec3().z));
                }
                else
                {
                    env.getReport().error(r.asString());
                }
            }
            if (workingSrs != null || (workingMatrix != null && workingMatrix != Mogre.Matrix4.IDENTITY))
            {
                //TODO foreach (Geometry shape in input.getGeometry())
                //{
                //    if (workingMatrix != null && !workingMatrix.Equals(Mogre.Matrix4.IDENTITY))
                //    {

                //        XformVisitor visitor = new XformVisitor();
                //        visitor.mat = workingMatrix;
                //        shape.accept(visitor);
                //    }
                //    if (workingSrs != null && !(workingSrs.equivalentTo(env.getInputSRS())))
                //    {
                //        workingSrs.transformInPlace(shape);
                //    }
                //}
                if (workingSrs != null && !(workingSrs.equivalentTo(env.getInputSRS())))
                {
                   Geometry temp =  GeometryTransform.TransformGeometry(input.getGeometry(), ((SharpMapSpatialReference)workingSrs).MathTransform);
                   input.setGeometry(temp);
                   //workingSrs.transformInPlace(input.getGeometry());
                }
            }
            output.Add(input);
            return output;
        }
开发者ID:agustinsantos,项目名称:mogregis3d,代码行数:46,代码来源:TransformFilter.cs


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