private void ParamChanged() { geoEllipFrustumEntity = m_Geometry as GSOGeoEllipFrustumEntity; if (geoEllipFrustumEntity != null) { try { geoEllipFrustumEntity.TopXRadius = Convert.ToDouble(textBoxTopXRadius.Text); geoEllipFrustumEntity.TopYRadius = Convert.ToDouble(textBoxTopYRadius.Text); geoEllipFrustumEntity.BottomXRadius = Convert.ToDouble(textBoxBottomXRadius.Text); geoEllipFrustumEntity.BottomYRadius = Convert.ToDouble(textBoxBottomYRadius.Text); geoEllipFrustumEntity.Length = Convert.ToDouble(textBoxLength.Text); geoEllipFrustumEntity.Slices = Convert.ToInt32(textBoxSlices.Text); if (m_GlobeControl != null) { m_GlobeControl.Refresh(); } } catch (System.Exception exp) { Log.PublishTxt(exp); } } }
private void CtrlEllipFrustumEntityParamPage_Load(object sender, EventArgs e) { geoEllipFrustumEntity = m_Geometry as GSOGeoEllipFrustumEntity; if (geoEllipFrustumEntity != null) { textBoxTopXRadius.Text = geoEllipFrustumEntity.TopXRadius.ToString(); textBoxTopYRadius.Text = geoEllipFrustumEntity.TopYRadius.ToString(); textBoxBottomXRadius.Text = geoEllipFrustumEntity.BottomXRadius.ToString(); textBoxBottomYRadius.Text = geoEllipFrustumEntity.BottomYRadius.ToString(); textBoxLength.Text = geoEllipFrustumEntity.Length.ToString(); textBoxSlices.Text = geoEllipFrustumEntity.Slices.ToString(); } }
//椭圆台柱 private void btn_EllipseFrustum_Click(object sender, EventArgs e) { GSOGeoEllipFrustumEntity ellipFrustum = new GSOGeoEllipFrustumEntity(); ellipFrustum.Position = GetCurrentViewPoint(); ellipFrustum.TopXRadius = 200; //顶面椭圆X方向半径 ellipFrustum.TopYRadius = 200; //顶面椭圆Y方向半径 ellipFrustum.BottomXRadius = 200; //底面椭圆X方向半径 ellipFrustum.BottomYRadius = 200; //底面椭圆Y方向半径 ellipFrustum.Length = 300; //台柱高度 ellipFrustum.Slices = 200; AddNewGeoToLayer(ellipFrustum, "椭圆台柱"); }