private bool method_0(IFeatureClass ifeatureClass_0) { if (ifeatureClass_0 != null) { try { IDataset dataset = ifeatureClass_0 as IDataset; IWorkspaceExtensionManager workspace = dataset.Workspace as IWorkspaceExtensionManager; UID gUID = new UIDClass { Value = "{FD05270A-8E0B-4823-9DEE-F149347C32B6}" }; IRepresentationWorkspaceExtension extension = workspace.FindExtension(gUID) as IRepresentationWorkspaceExtension; if (extension == null) { return(false); } return(true); } catch { } } return(false); }
public static bool HasRepresentation(IFeatureClass pfclass) { if (pfclass != null) { try { IDataset dataset = pfclass as IDataset; IWorkspaceExtensionManager workspace = dataset.Workspace as IWorkspaceExtensionManager; UID gUID = new UIDClass { Value = "{FD05270A-8E0B-4823-9DEE-F149347C32B6}" }; IRepresentationWorkspaceExtension extension = workspace.FindExtension(gUID) as IRepresentationWorkspaceExtension; if (extension == null) { return(false); } return(extension.get_FeatureClassHasRepresentations(pfclass)); } catch { } } return(false); }
public static IRepresentationClass GetRepClass(IWorkspace Workspace, string RepresentationClassName) { // Get the RepresentationWorkspaceExtension from the Workspace IRepresentationWorkspaceExtension RepWsExt = GetRepExtension(Workspace); // Get and return the RepresentationClass return(RepWsExt.OpenRepresentationClass(commonFunctions.QualifyClassName(Workspace, RepresentationClassName))); }
private void method_1() { if (this.idatasetName_0 != null) { this.txtruleIDFldName.ReadOnly = true; this.txtoverrideFldName.ReadOnly = true; this.txtruleIDFldName.Text = (this.idatasetName_0 as IRepresentationClassName).RuleIDFieldName; this.txtoverrideFldName.Text = (this.idatasetName_0 as IRepresentationClassName).OverrideFieldName; this.txtRepresentationName.Text = this.idatasetName_0.Name; this.rdoRequireShapeOverride.Checked = this.irepresentationClass_0.RequireShapeOverride; } else { IRepresentationWorkspaceExtension extension = this.method_0(this.ifeatureClass_0); string str = this.ifeatureClass_0.AliasName + "_Rep"; string str2 = "RuleID"; string str3 = "Override"; if (extension.get_FeatureClassHasRepresentations(this.ifeatureClass_0)) { IList <string> list = new List <string>(); IEnumDatasetName name = extension.get_FeatureClassRepresentationNames(this.ifeatureClass_0); for (IDatasetName name2 = name.Next(); name2 != null; name2 = name.Next()) { list.Add(name2.Name); } int num = 1; string item = str; while (list.IndexOf(item) != -1) { item = str + num.ToString(); num++; } str = item; num = 1; item = str2; while (this.ifeatureClass_0.FindField(item) != -1) { item = str2 + "_" + num.ToString(); num++; } str2 = item; num = 1; item = str3; while (this.ifeatureClass_0.FindField(item) != -1) { item = str3 + "_" + num.ToString(); num++; } str3 = item; } this.txtruleIDFldName.Text = str2; this.txtoverrideFldName.Text = str3; this.txtRepresentationName.Text = str; } }
public IRepresentationClass CreateRepClass(IFeatureClass ifeatureClass_0) { IDataset dataset = ifeatureClass_0 as IDataset; IRepresentationWorkspaceExtension repWSExt = GetRepWSExt(dataset.Workspace); if (repWSExt != null) { IRepresentationRules rules = new RepresentationRulesClass(); return(repWSExt.CreateRepresentationClass(ifeatureClass_0, ifeatureClass_0.AliasName + "_Rep", "My_RuleID", "My_Override", false, rules, null)); } return(null); }
private void btnNext_Click(object sender, EventArgs e) { switch (this.int_0) { case 0: if (!this.reprensationGeneralPage_0.Apply()) { return; } this.reprensationGeneralPage_0.Visible = false; this.representationRulesPage_0.Visible = true; this.btnLast.Enabled = true; this.btnNext.Text = "完成"; break; case 1: { IDataset dataset = this.ifeatureClass_0 as IDataset; IWorkspace workspace = dataset.Workspace; try { IWorkspaceExtensionManager manager = workspace as IWorkspaceExtensionManager; UID gUID = new UIDClass { Value = "{FD05270A-8E0B-4823-9DEE-F149347C32B6}" }; IRepresentationWorkspaceExtension extension = manager.FindExtension(gUID) as IRepresentationWorkspaceExtension; if (extension != null) { new RepresentationRulesClass(); this.irepresentationClass_0 = extension.CreateRepresentationClass(this.ifeatureClass_0, this.reprensationGeneralPage_0.RepresentationName, this.reprensationGeneralPage_0.RuleIDFieldName, this.reprensationGeneralPage_0.OverrideFieldName, this.reprensationGeneralPage_0.RequireShapeOverride, this.irepresentationRules_0, null); } } catch (Exception exception) { MessageBox.Show(exception.Message); return; } base.DialogResult = DialogResult.OK; return; } } this.int_0++; }
private void method_0() { IFeatureClass featureClass = this.ifeatureLayer_0.FeatureClass; IRepresentationWorkspaceExtension repWSExtFromFClass = RepresentationAssist.GetRepWSExtFromFClass(featureClass); string str = this.ifeatureLayer_0.FeatureClass.AliasName + "_Rep"; string str2 = "RuleID"; string str3 = "Override"; if (repWSExtFromFClass.get_FeatureClassHasRepresentations(featureClass)) { IList <string> list = new List <string>(); IEnumDatasetName name = repWSExtFromFClass.get_FeatureClassRepresentationNames(featureClass); for (IDatasetName name2 = name.Next(); name2 != null; name2 = name.Next()) { list.Add(name2.Name); } int num = 1; string item = str; while (list.IndexOf(item) != -1) { item = str + num.ToString(); num++; } str = item; num = 1; item = str2; while (featureClass.FindField(item) != -1) { item = str2 + "_" + num.ToString(); num++; } str2 = item; num = 1; item = str3; while (featureClass.FindField(item) != -1) { item = str3 + "_" + num.ToString(); num++; } str3 = item; } this.txtruleIDFldName.Text = str2; this.txtoverrideFldName.Text = str3; this.txtRepresentationName.Text = str; this.lblFC.Text = this.ifeatureLayer_0.FeatureClass.AliasName; this.rdoSelectFeature.Enabled = (this.ifeatureLayer_0 as IFeatureSelection).SelectionSet.Count > 0; }
private void RepresentationPropertyPage_Load(object sender, EventArgs e) { IRepresentationWorkspaceExtension repWSExtFromFClass = this.GetRepWSExtFromFClass(this.ifeatureClass_0); if (repWSExtFromFClass.get_FeatureClassHasRepresentations(this.ifeatureClass_0)) { IEnumDatasetName name = repWSExtFromFClass.get_FeatureClassRepresentationNames(this.ifeatureClass_0); IDatasetName name2 = name.Next(); string[] items = new string[3]; while (name2 != null) { items[0] = name2.Name; items[1] = (name2 as IRepresentationClassName).RuleIDFieldName; items[2] = (name2 as IRepresentationClassName).OverrideFieldName; ListViewItem item = new ListViewItem(items) { Tag = name2 }; this.listView1.Items.Add(item); name2 = name.Next(); } } }
private void btnConvert_Click(object sender, EventArgs e) { if (this.txtRepresentationName.Text.Trim().Length == 0) { MessageBox.Show("名字不能为空!"); } else if (this.txtruleIDFldName.Text.Trim().Length == 0) { MessageBox.Show("RuleID字段不能为空!"); } else if (this.txtoverrideFldName.Text.Trim().Length == 0) { MessageBox.Show("Override字段不能为空!"); } else { try { IFeatureClass featureClass = this.ifeatureLayer_0.FeatureClass; IRepresentationWorkspaceExtension repWSExtFromFClass = RepresentationAssist.GetRepWSExtFromFClass(featureClass); if (repWSExtFromFClass != null) { IRepresentationRule repRule = RepresentationAssist.CreateRepresentationRule(featureClass); IRepresentationRules rules = new RepresentationRulesClass(); rules.Add(repRule); IRepresentationClass class3 = repWSExtFromFClass.CreateRepresentationClass(featureClass, this.txtRepresentationName.Text, this.txtruleIDFldName.Text, this.txtoverrideFldName.Text, this.rdoRequireShapeOverride.Checked, rules, null); if ((this.imap_0 != null) && this.chkAddLayer.Checked) { IFeatureLayer layer = new FeatureLayerClass { FeatureClass = featureClass }; IFeatureRenderer renderer = new RepresentationRendererClass(); (renderer as IRepresentationRenderer).RepresentationClass = class3; (layer as IGeoFeatureLayer).Renderer = renderer; this.imap_0.AddLayer(layer); (this.imap_0 as IActiveView).Refresh(); } base.DialogResult = DialogResult.OK; } else { base.DialogResult = DialogResult.OK; } } catch (COMException exception) { switch (exception.ErrorCode) { case -2147218682: MessageBox.Show(exception.Message); return; case -2147218675: MessageBox.Show("该要素类中已存在同名的制图表现"); break; case -2147218674: MessageBox.Show("该要素类中已存在同名RuleID字段或Override字段"); break; } } catch (Exception) { } } }
private void method_0() { this.dotDensityRendererCtrl_0.CurrentLayer = this.ilayer_0; this.simpleRenderControl_0.CurrentLayer = this.ilayer_0; this.uniqueValueRendererCtrl_0.CurrentLayer = this.ilayer_0; this.classBreaksRendererCtrl_0.CurrentLayer = this.ilayer_0; this.proportionalSymbolRendererCtrl_0.CurrentLayer = this.ilayer_0; this.chartRendererCtrl_0.CurrentLayer = this.ilayer_0; this.chartRendererCtrl_1.ChartRenderType = 1; this.chartRendererCtrl_1.CurrentLayer = this.ilayer_0; this.uniqueValueRendererMoreAttributeCtrl_0.CurrentLayer = this.ilayer_0; this.matchStyleGrallyCtrl_0.CurrentLayer = this.ilayer_0; if (this.ilayer_0 is IGeoFeatureLayer) { this.treeView1.Nodes.AddRange(new TreeNode[] { new TreeNode("要素", new TreeNode[] { new TreeNode("简单渲染") }), new TreeNode("类别", new TreeNode[] { new TreeNode("唯一值渲染"), new TreeNode("唯一值渲染,多字段"), new TreeNode("匹配符号库") }), new TreeNode("数量", new TreeNode[] { new TreeNode("渐变颜色渲染"), new TreeNode("比例符号") }), new TreeNode("图表", new TreeNode[] { new TreeNode("饼图"), new TreeNode("直方图") }) }); this.treeView1.Nodes[0].Tag = this.simpleRenderControl_0; this.treeView1.Nodes[0].Nodes[0].Tag = this.simpleRenderControl_0; this.treeView1.Nodes[1].Tag = this.uniqueValueRendererCtrl_0; this.treeView1.Nodes[1].Nodes[0].Tag = this.uniqueValueRendererCtrl_0; this.treeView1.Nodes[1].Nodes[1].Tag = this.uniqueValueRendererMoreAttributeCtrl_0; this.treeView1.Nodes[1].Nodes[2].Tag = this.matchStyleGrallyCtrl_0; this.treeView1.Nodes[2].Tag = this.classBreaksRendererCtrl_0; this.treeView1.Nodes[2].Nodes[0].Tag = this.classBreaksRendererCtrl_0; this.treeView1.Nodes[2].Nodes[1].Tag = this.proportionalSymbolRendererCtrl_0; this.treeView1.Nodes[3].Tag = this.chartRendererCtrl_0; this.treeView1.Nodes[3].Nodes[0].Tag = this.chartRendererCtrl_0; this.treeView1.Nodes[3].Nodes[1].Tag = this.chartRendererCtrl_1; this.simpleRenderControl_0.Visible = false; this.simpleRenderControl_0.Dock = DockStyle.Fill; this.panel.Controls.Add(this.simpleRenderControl_0); this.uniqueValueRendererCtrl_0.Visible = false; this.uniqueValueRendererCtrl_0.Dock = DockStyle.Fill; this.panel.Controls.Add(this.uniqueValueRendererCtrl_0); this.uniqueValueRendererMoreAttributeCtrl_0.Visible = false; this.uniqueValueRendererMoreAttributeCtrl_0.Dock = DockStyle.Fill; this.panel.Controls.Add(this.uniqueValueRendererMoreAttributeCtrl_0); this.matchStyleGrallyCtrl_0.Visible = false; this.matchStyleGrallyCtrl_0.Dock = DockStyle.Fill; this.panel.Controls.Add(this.matchStyleGrallyCtrl_0); this.classBreaksRendererCtrl_0.Dock = DockStyle.Fill; this.classBreaksRendererCtrl_0.Visible = false; this.panel.Controls.Add(this.classBreaksRendererCtrl_0); this.proportionalSymbolRendererCtrl_0.Dock = DockStyle.Fill; this.proportionalSymbolRendererCtrl_0.Visible = false; this.panel.Controls.Add(this.proportionalSymbolRendererCtrl_0); this.dotDensityRendererCtrl_0.Dock = DockStyle.Fill; this.dotDensityRendererCtrl_0.Visible = false; this.panel.Controls.Add(this.dotDensityRendererCtrl_0); this.chartRendererCtrl_0.Dock = DockStyle.Fill; this.chartRendererCtrl_0.Visible = false; this.chartRendererCtrl_0.ChartRenderType = 0; this.panel.Controls.Add(this.chartRendererCtrl_0); this.chartRendererCtrl_1.Dock = DockStyle.Fill; this.chartRendererCtrl_1.Visible = false; this.chartRendererCtrl_1.ChartRenderType = 1; this.panel.Controls.Add(this.chartRendererCtrl_1); if (RepresentationAssist.HasRepresentation((this.ilayer_0 as IFeatureLayer).FeatureClass)) { TreeNode node = new TreeNode("制图表现"); this.representationRendererPage_0.CurrentLayer = this.ilayer_0; this.representationRendererPage_0.Dock = DockStyle.Fill; this.representationRendererPage_0.Visible = false; this.panel.Controls.Add(this.representationRendererPage_0); IFeatureClass featureClass = (this.ilayer_0 as IFeatureLayer).FeatureClass; IRepresentationWorkspaceExtension repWSExtFromFClass = RepresentationAssist.GetRepWSExtFromFClass(featureClass); this.representationRendererPage_0.RepresentationWorkspaceExtension = repWSExtFromFClass; IEnumDatasetName name = repWSExtFromFClass.get_FeatureClassRepresentationNames(featureClass); for (IDatasetName name2 = name.Next(); name2 != null; name2 = name.Next()) { TreeNode node2 = new TreeNode(name2.Name) { Tag = this.representationRendererPage_0 }; node.Nodes.Add(node2); } this.treeView1.Nodes.Add(node); } } else if (this.ilayer_0 is IRasterLayer) { this.treeView1.Nodes.AddRange(new TreeNode[] { new TreeNode("唯一值"), new TreeNode("分类"), new TreeNode("拉伸") }); this.treeView1.Nodes[0].Tag = this.uniqueValueRendererCtrl_0; this.treeView1.Nodes[1].Tag = this.classBreaksRendererCtrl_0; this.uniqueValueRendererCtrl_0.Visible = false; this.uniqueValueRendererCtrl_0.Dock = DockStyle.Fill; this.panel.Controls.Add(this.uniqueValueRendererCtrl_0); this.classBreaksRendererCtrl_0.Visible = false; this.classBreaksRendererCtrl_0.Dock = DockStyle.Fill; this.panel.Controls.Add(this.classBreaksRendererCtrl_0); } }