//选择范围 private void T1007() { axMxDrawX1.DynWorldDraw += AxMxDrawX1_DynWorldDraw;//添加动态画框事件 axMxDrawX1.AddLayer("tkbox"); MxDrawPoint pt1 = axMxDrawX1.GetPoint(false, 0, 0, "开始坐标...") as MxDrawPoint; if (pt1 == null) { return; } MxDrawUiPrPoint scpt = new MxDrawUiPrPoint(); scpt.message = "终点坐标..."; scpt.basePoint = pt1; scpt.setUseBasePt(false); var spdata = scpt.InitUserDraw("SelectRangeBox"); axMxDrawX1.SetSysVarLong("ORTHOMODE", 0); spdata.SetPoint("BasePoint", pt1); if (scpt.go() != MCAD_McUiPrStatus.mcOk) { return; } spdata.Draw(); //放大 axMxDrawX1.ZoomWindow(pt1.x, pt1.y, spdata.DragPoint.x, spdata.DragPoint.y); PublicValue = new { Lx = pt1.x, Ly = pt1.y, Lz = pt1.z, Rx = spdata.DragPoint.x, Ry = spdata.DragPoint.y, Rz = spdata.DragPoint.z }; //删除选择框 MxDrawSelectionSet ss = new MxDrawSelectionSet(); MxDrawResbuf filter = new MxDrawResbuf(); filter.AddStringEx("tkbox", 8); ss.Select(MCAD_McSelect.mcSelectionSetAll, null, null, filter); for (int i = 0; i < ss.Count; i++) { axMxDrawX1.Erase(ss.Item(i).ObjectID); } //删掉画框的图层 MxDrawDatabase database = axMxDrawX1.GetDatabase() as MxDrawDatabase; IMxDrawLayerTableRecord layer = database.GetLayerTable().GetAt("tkbox", false); if (layer != null) { layer.Erase(); } return; }
private void Delete_layer() { MxDrawSelectionSet scn = new MxDrawSelectionSet(); MxDrawResbuf filter = new MxDrawResbuf(); filter.AddStringEx("HLT_BEAM_CLINE", 8); scn.Select(MCAD_McSelect.mcSelectionSetWindow, null, null, filter); for (int i = 0; i < scn.Count; i++) { scn.Item(i).Erase(); } // 得到数据库对象. MxDrawDatabase database = (MxDrawDatabase)axMxDrawX1.GetDatabase(); // 得到层表. MxDrawLayerTable layerTable = database.GetLayerTable(); // 得到层。 MxDrawLayerTableRecord layer = layerTable.GetAt("HLT_BEAM_CLINE", false); if (layer != null) { layer.Erase(); } }