示例#1
0
        //Update the painter when correspounding single's data changed
        private void GEMSSingle_DataChanged(object sender, GEMSSingle.SingleDataChangedEventArgs e)
        {
            if (sender is GEMSSingle && (sender as GEMSSingle) == source)
            {
                switch (e.changedType)
                {
                case GEMSSingle.SingleDataChangedEventArgs.DataChangeType.DisplayStyleChanged:
                {
                    //Re-create all the material
                    CreateMaterial();
                }
                break;

                case GEMSSingle.SingleDataChangedEventArgs.DataChangeType.EOChanged:
                {
                    //Re-create all the material
                    CreateMaterial();

                    //Re-create the eo single model
                    if (source.EOSymbolModel != null)
                    {
                        eoSymbolRender = new SingleEOSymbolRender(d3d, source.EOSymbolModel);
                        eoSymbolRender.Initialize( );
                    }
                    else
                    {
                        eoSymbolRender.Dispose( );
                        eoSymbolRender = null;
                    }
                }
                break;

                case GEMSSingle.SingleDataChangedEventArgs.DataChangeType.GeometryChanged:
                {
                    //Re-create the primaryModelRender
                    if (source.PrimaryModel != null)
                    {
                        primaryModelRender = GeometryRender.Create(d3d, source.PrimaryModel);
                    }

                    if (source.EOSymbolModel != null)
                    {
                        eoSymbolRender = new SingleEOSymbolRender(d3d, source.EOSymbolModel);
                        eoSymbolRender.Initialize( );
                    }
                }
                break;

                default:
                    break;
                }
            }
            else
            {
                return;
            }
        }
示例#2
0
 private void OnGEMSSingleDataChanged(object sender, GEMSSingle.SingleDataChangedEventArgs e)
 {
     //rebinding the data
     propertyGrid.SelectedObject = m_project.CurrentSelectedObject;
 }