You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1067 lines
19 KiB
1067 lines
19 KiB
4 weeks ago
|
function MxVueComandLine() {
|
||
|
// 命令行
|
||
|
let msCmdText = "";
|
||
|
let msCmdDisplay = "";
|
||
|
let msCmdTip = "";
|
||
|
|
||
|
let mUpDisplayFun = undefined;
|
||
|
|
||
|
// 命令行更新
|
||
|
this.mountUpDisplayFun = function (fun) {
|
||
|
mUpDisplayFun = fun;
|
||
|
}
|
||
|
|
||
|
this.upDisplay = function () {
|
||
|
if (mUpDisplayFun == undefined) {
|
||
|
return;
|
||
|
}
|
||
|
mUpDisplayFun();
|
||
|
}
|
||
|
|
||
|
this.setCmdText = function (str) {
|
||
|
msCmdText = str;
|
||
|
}
|
||
|
|
||
|
this.getCmdText = function () {
|
||
|
return msCmdText;
|
||
|
}
|
||
|
|
||
|
this.getCmdDisplay = function () {
|
||
|
return msCmdDisplay;
|
||
|
}
|
||
|
|
||
|
this.setCmdDisplay = function (str) {
|
||
|
msCmdDisplay = str;
|
||
|
}
|
||
|
|
||
|
this.addCmdDisplay = function (str) {
|
||
|
if (msCmdDisplay.length > 1024) {
|
||
|
msCmdDisplay = msCmdDisplay.substring(msCmdDisplay.length - 1024, msCmdDisplay.length);
|
||
|
msCmdDisplay = msCmdDisplay + str;
|
||
|
}
|
||
|
else {
|
||
|
msCmdDisplay = msCmdDisplay + str;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
this.setCmdTip = function (str) {
|
||
|
msCmdTip = str;
|
||
|
}
|
||
|
|
||
|
|
||
|
this.getCmdTip = function () {
|
||
|
return msCmdTip;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
const MxInputType = {
|
||
|
kNoInput : 0,
|
||
|
kXYCoordInput : 1,
|
||
|
kDistanceInput : 2,
|
||
|
kDynTip : 3
|
||
|
};
|
||
|
|
||
|
const MxInputPostionType = {
|
||
|
kRelative : 0, // 相对mPos计算。并排放。
|
||
|
kAbsolutely : 1 // 绝对位置,指定位置。
|
||
|
};
|
||
|
|
||
|
function MxDynamicInput()
|
||
|
{
|
||
|
let mType = MxInputType.kNoInput;
|
||
|
let mPos=[0,0];
|
||
|
let mTip = "";
|
||
|
|
||
|
let mValue1 = "";
|
||
|
let mValue1Pos = [0,0];
|
||
|
|
||
|
let mValue2 = "";
|
||
|
let mValue2Pos = [0,0];
|
||
|
|
||
|
|
||
|
let misShow = false;
|
||
|
|
||
|
let mOnKeydownEvent = undefined;
|
||
|
|
||
|
let mFocusValue = "";
|
||
|
|
||
|
this.setFocusValue = function(value){
|
||
|
mFocusValue = value;
|
||
|
}
|
||
|
|
||
|
this.getFocusValue = function(){
|
||
|
return mFocusValue;
|
||
|
}
|
||
|
|
||
|
|
||
|
this.mountKeydownEvent = function (fun) {
|
||
|
mOnKeydownEvent = fun;
|
||
|
}
|
||
|
|
||
|
this.onKeydown = function (keyCode) {
|
||
|
if (mOnKeydownEvent == undefined) {
|
||
|
return;
|
||
|
}
|
||
|
mOnKeydownEvent(keyCode);
|
||
|
}
|
||
|
|
||
|
|
||
|
this.setType = function(type){
|
||
|
mType = type;
|
||
|
}
|
||
|
|
||
|
this.getType = function(){
|
||
|
return mType;
|
||
|
}
|
||
|
|
||
|
this.isShow = function(){
|
||
|
return misShow;
|
||
|
}
|
||
|
|
||
|
this.setPos = function(pos){
|
||
|
mPos = pos;
|
||
|
}
|
||
|
|
||
|
this.setTip = function(tip){
|
||
|
mTip = tip;
|
||
|
}
|
||
|
|
||
|
this.setValue1 = function(val){
|
||
|
mValue1 = val;
|
||
|
}
|
||
|
|
||
|
this.getValue1 = function(){
|
||
|
return mValue1;
|
||
|
}
|
||
|
|
||
|
this.setValue1Pos = function(pos){
|
||
|
mValue1Pos = pos;
|
||
|
}
|
||
|
|
||
|
this.setValue2 = function(val){
|
||
|
mValue2 = val;
|
||
|
}
|
||
|
|
||
|
this.getValue2 = function(){
|
||
|
return mValue2;
|
||
|
}
|
||
|
|
||
|
this.setValue2Pos = function(pos){
|
||
|
mValue2Pos = pos;
|
||
|
}
|
||
|
|
||
|
this.setShow = function(isShow){
|
||
|
misShow = isShow;
|
||
|
}
|
||
|
|
||
|
this.getData = function(){
|
||
|
if(!misShow){
|
||
|
return undefined;
|
||
|
}
|
||
|
|
||
|
let ret = {list:[{value:"",readonly:true},{value:"",readonly:false},{value:"",readonly:false}],pos:mPos,postype:MxInputPostionType.kRelative};
|
||
|
if(mType == MxInputType.kNoInput){
|
||
|
return undefined;
|
||
|
}
|
||
|
else if(mType == MxInputType.kXYCoordInput){
|
||
|
ret.list[0].show = true;
|
||
|
ret.list[0].value = mTip;
|
||
|
ret.list[0].readonly = true;
|
||
|
|
||
|
ret.list[1].show = true;
|
||
|
ret.list[1].value = mValue1;
|
||
|
ret.list[1].readonly = false;
|
||
|
|
||
|
ret.list[2].show = true;
|
||
|
ret.list[2].value = mValue2;
|
||
|
ret.list[2].readonly = false;
|
||
|
}
|
||
|
else if(mType == MxInputType.kDistanceInput)
|
||
|
{
|
||
|
ret.list[0].show = true;
|
||
|
ret.list[0].value = mTip;
|
||
|
ret.list[0].readonly = true;
|
||
|
|
||
|
|
||
|
ret.list[1].show = true;
|
||
|
ret.list[1].value = mValue1;
|
||
|
ret.list[1].readonly = false;
|
||
|
ret.list[1].pos = mValue1Pos;
|
||
|
|
||
|
ret.list[2].show = true;
|
||
|
ret.list[2].value = mValue2;
|
||
|
ret.list[2].readonly = true;
|
||
|
ret.list[2].pos = mValue2Pos;
|
||
|
ret.postype = MxInputPostionType.kAbsolutely;
|
||
|
}
|
||
|
else if(mType == MxInputType.kDynTip)
|
||
|
{
|
||
|
|
||
|
ret.list[0].show = true;
|
||
|
ret.list[0].value = mTip;
|
||
|
ret.list[0].readonly = true;
|
||
|
|
||
|
ret.list[1].show = false;
|
||
|
ret.list[2].show = false;
|
||
|
}
|
||
|
else {
|
||
|
ret = undefined;
|
||
|
}
|
||
|
return ret;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
function MxVueInterface() {
|
||
|
// 标题
|
||
|
const mTitle = {
|
||
|
// 是否显示
|
||
|
isShow: true,
|
||
|
// 标题
|
||
|
title: '标题'
|
||
|
};
|
||
|
|
||
|
// 顶部按钮栏数据
|
||
|
const mTopButtonBarData = {
|
||
|
isShow: true,
|
||
|
buttonBarData: [{
|
||
|
icon: "iconwenjian",
|
||
|
prompt: "提示1"
|
||
|
}, {
|
||
|
icon: "iconwenjian",
|
||
|
prompt: "提示2"
|
||
|
}, {
|
||
|
icon: "iconwenjian",
|
||
|
prompt: "提示3"
|
||
|
}]
|
||
|
}
|
||
|
|
||
|
// 标题按钮栏数据
|
||
|
const mTitleButtonBarData = [{
|
||
|
icon: "iconxinjiantuceng",
|
||
|
prompt: "提示"
|
||
|
},
|
||
|
{
|
||
|
icon: "iconwenjian",
|
||
|
prompt: "提示"
|
||
|
},
|
||
|
{
|
||
|
icon: "iconic_save",
|
||
|
prompt: "提示"
|
||
|
},
|
||
|
{
|
||
|
icon: "iconhoutui-shi",
|
||
|
prompt: "提示"
|
||
|
},
|
||
|
{
|
||
|
icon: "iconqianjin-shi",
|
||
|
prompt: "提示"
|
||
|
},
|
||
|
{
|
||
|
icon: "iconxiajiantou",
|
||
|
prompt: "提示"
|
||
|
},
|
||
|
];
|
||
|
|
||
|
// 菜单栏数据
|
||
|
const mMenuBarData = [
|
||
|
{
|
||
|
title: "文件(F)",
|
||
|
list: [
|
||
|
{
|
||
|
tab: "新建(N)",
|
||
|
icon: "iconxinjiantuceng"
|
||
|
},
|
||
|
{
|
||
|
tab: "新建(O)",
|
||
|
icon: "icondakaiwenjian"
|
||
|
},
|
||
|
{
|
||
|
tab: "打开DWG文件(M)",
|
||
|
icon: "icondakaidwg"
|
||
|
},
|
||
|
{
|
||
|
tab: "输入(R)"
|
||
|
},
|
||
|
{
|
||
|
tab: "保存(S)",
|
||
|
icon: "iconic_save"
|
||
|
},
|
||
|
{
|
||
|
tab: "另存为(A)",
|
||
|
icon: "iconlingcunwei"
|
||
|
},
|
||
|
{
|
||
|
tab: "另存为DWG(F)",
|
||
|
icon: "iconDWG1"
|
||
|
},
|
||
|
{
|
||
|
tab: "输出(E)"
|
||
|
},
|
||
|
{
|
||
|
tab: "打印(P)",
|
||
|
icon: "iconccgl-dayinliebiao-3"
|
||
|
},
|
||
|
{
|
||
|
tab: "退出(X)"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
title: "功能(A)",
|
||
|
list: [
|
||
|
{
|
||
|
tab: "会员登录(L)"
|
||
|
},
|
||
|
{
|
||
|
tab: "云图(C)"
|
||
|
},
|
||
|
{
|
||
|
tab: "测量(L)"
|
||
|
},
|
||
|
{
|
||
|
tab: "批准(P)"
|
||
|
},
|
||
|
{
|
||
|
tab: "审图批注(P)"
|
||
|
},
|
||
|
{
|
||
|
tab: "高级工具(O)"
|
||
|
},
|
||
|
{
|
||
|
tab: "绘图(D)"
|
||
|
},
|
||
|
{
|
||
|
tab: "编辑(E)"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
title: "编辑(E)",
|
||
|
list: [
|
||
|
{
|
||
|
tab: "放弃(R)",
|
||
|
icon: "iconhuitui"
|
||
|
},
|
||
|
{
|
||
|
tab: "回退(U)",
|
||
|
icon: "iconhuitui1"
|
||
|
},
|
||
|
{
|
||
|
tab: "剪切(T)",
|
||
|
icon: "iconjianqie"
|
||
|
},
|
||
|
{
|
||
|
tab: "复制(C)",
|
||
|
icon: "iconcopy"
|
||
|
},
|
||
|
{
|
||
|
tab: "粘贴(P)",
|
||
|
icon: "iconniantie"
|
||
|
},
|
||
|
{
|
||
|
tab: "清除(A)",
|
||
|
icon: "iconqingchu"
|
||
|
},
|
||
|
{
|
||
|
tab: "测距(D)",
|
||
|
icon: "iconceju"
|
||
|
},
|
||
|
{
|
||
|
tab: "前置(F)",
|
||
|
icon: "iconqianzhi"
|
||
|
},
|
||
|
{
|
||
|
tab: "后置(B)",
|
||
|
icon: "iconhouzhi"
|
||
|
},
|
||
|
{
|
||
|
tab: "置于对象之上(S)",
|
||
|
icon: "iconr_shangzhi"
|
||
|
},
|
||
|
{
|
||
|
tab: "置于对象之下(X)",
|
||
|
icon: "iconr_xiazhi"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
title: "视图(V)",
|
||
|
list: [
|
||
|
{
|
||
|
tab: "重画(R)",
|
||
|
icon: "iconicon_zhonghua"
|
||
|
},
|
||
|
{
|
||
|
tab: "实时缩放(Z)",
|
||
|
icon: "iconsuofang1"
|
||
|
},
|
||
|
{
|
||
|
tab: "上一步",
|
||
|
icon: "iconsuofang-zhongzhi"
|
||
|
},
|
||
|
{
|
||
|
tab: "窗口缩放(W)",
|
||
|
icon: "iconzoomtoallitem"
|
||
|
},
|
||
|
{
|
||
|
tab: "范围缩放(E)",
|
||
|
icon: "iconsuofang2"
|
||
|
},
|
||
|
{
|
||
|
tab: "视区平移(P)",
|
||
|
icon: "iconqingchu"
|
||
|
},
|
||
|
{
|
||
|
tab: "测距(D)",
|
||
|
icon: "iconceju"
|
||
|
},
|
||
|
{
|
||
|
tab: "前置(F)",
|
||
|
icon: "iconqianzhi"
|
||
|
},
|
||
|
{
|
||
|
tab: "后置(B)",
|
||
|
icon: "iconhouzhi"
|
||
|
},
|
||
|
{
|
||
|
tab: "置于对象之上(S)",
|
||
|
icon: "iconqianzhisvg"
|
||
|
},
|
||
|
{
|
||
|
tab: "置于对象之下(X)",
|
||
|
icon: "iconhouzhi1"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
title: "格式(O)",
|
||
|
list: [
|
||
|
{
|
||
|
tab: "图层...(L)",
|
||
|
icon: "iconlayer"
|
||
|
},
|
||
|
{
|
||
|
tab: "打开所有图层(A)",
|
||
|
icon: "iconlight"
|
||
|
},
|
||
|
{
|
||
|
tab: "选择关闭图层(S)",
|
||
|
icon: "iconsuofang-zhongzhi"
|
||
|
},
|
||
|
{
|
||
|
tab: "颜色(C)"
|
||
|
},
|
||
|
{
|
||
|
tab: "线型(N)",
|
||
|
icon: "iconedit"
|
||
|
},
|
||
|
{
|
||
|
tab: "线宽(W)"
|
||
|
},
|
||
|
{
|
||
|
tab: "文字样式(S)",
|
||
|
icon: "iconl_wenzi"
|
||
|
},
|
||
|
{
|
||
|
tab: "标注样式(D)",
|
||
|
icon: "iconxianxingbiaozhu"
|
||
|
},
|
||
|
{
|
||
|
tab: "点样式(P)",
|
||
|
icon: "iconl_duoduan"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
title: "绘图(D)",
|
||
|
list: [
|
||
|
{
|
||
|
tab: "直线(L)",
|
||
|
icon: "iconl_zhixian"
|
||
|
},
|
||
|
{
|
||
|
tab: "多线段(P)",
|
||
|
icon: "iconl_duoduan"
|
||
|
},
|
||
|
{
|
||
|
tab: "正多边形(Y)",
|
||
|
icon: "iconl_duobian"
|
||
|
},
|
||
|
{
|
||
|
tab: "矩形(G)",
|
||
|
icon: "iconl_juxing"
|
||
|
},
|
||
|
{
|
||
|
tab: "圆弧(A)"
|
||
|
},
|
||
|
{
|
||
|
tab: "圆(C)",
|
||
|
icon: "iconl_yuan"
|
||
|
},
|
||
|
{
|
||
|
tab: "椭圆(E)",
|
||
|
icon: "iconl_tuoyuan"
|
||
|
},
|
||
|
{
|
||
|
tab: "椭圆弧(O)",
|
||
|
icon: "iconl_tuoyuanhu"
|
||
|
},
|
||
|
{
|
||
|
tab: "样条线(S)",
|
||
|
icon: "iconl_quxian"
|
||
|
},
|
||
|
{
|
||
|
tab: "点(N)",
|
||
|
icon: "iconxianxingbiaozhu"
|
||
|
},
|
||
|
{
|
||
|
tab: "插入块(L...)",
|
||
|
icon: "iconcharu1"
|
||
|
},
|
||
|
{
|
||
|
tab: "文字(T)",
|
||
|
icon: "iconziti"
|
||
|
},
|
||
|
{
|
||
|
tab: "多行文字(M)",
|
||
|
icon: "iconduohangwenzi"
|
||
|
},
|
||
|
{
|
||
|
tab: "填充(H)",
|
||
|
icon: "icontianchong"
|
||
|
},
|
||
|
{
|
||
|
tab: "图片(E)",
|
||
|
icon: "iconcharutupian"
|
||
|
},
|
||
|
{
|
||
|
tab: "线型标注(B)",
|
||
|
icon: "iconxianxingbiaozhu"
|
||
|
},
|
||
|
{
|
||
|
tab: "对齐标注(D)",
|
||
|
icon: "iconduiqibiaozhu"
|
||
|
},
|
||
|
{
|
||
|
tab: "半径标注(F)",
|
||
|
icon: "iconbanjingbiaozhu_"
|
||
|
},
|
||
|
{
|
||
|
tab: "直径标注(G)",
|
||
|
icon: "iconzhijing"
|
||
|
},
|
||
|
{
|
||
|
tab: "倾斜标注(J)",
|
||
|
icon: "iconlujingqingxie"
|
||
|
},
|
||
|
{
|
||
|
tab: "块(K)"
|
||
|
},
|
||
|
{
|
||
|
tab: "云线(Y)",
|
||
|
icon: "iconyunxian"
|
||
|
},
|
||
|
{
|
||
|
tab: "批注(Z)",
|
||
|
icon: "iconpizhu15beifen4"
|
||
|
}
|
||
|
],
|
||
|
},
|
||
|
{
|
||
|
title:"修改(M)",
|
||
|
list:[
|
||
|
{
|
||
|
tab:"对象特性(O)",
|
||
|
icon:"iconduixiang"
|
||
|
},
|
||
|
{
|
||
|
tab:"快速选择(Q)",
|
||
|
icon:"iconxuanze"
|
||
|
},
|
||
|
{
|
||
|
tab:"特性匹配(F)",
|
||
|
icon:"iconpipei"
|
||
|
},
|
||
|
{
|
||
|
tab:"删除(E)",
|
||
|
icon:"iconshanchu"
|
||
|
},
|
||
|
{
|
||
|
tab:"复制(Y)",
|
||
|
icon:"iconcopy"
|
||
|
},
|
||
|
{
|
||
|
tab:"镜像(I)",
|
||
|
icon:"iconjingxiang"
|
||
|
},
|
||
|
{
|
||
|
tab:"偏移(S)",
|
||
|
icon:"iconpianyi"
|
||
|
},
|
||
|
{
|
||
|
tab:"移动(V)",
|
||
|
icon:"iconyidong"
|
||
|
},
|
||
|
{
|
||
|
tab:"旋转(R)",
|
||
|
icon:"iconxuanzhuan"
|
||
|
},
|
||
|
{
|
||
|
tab:"缩放(L)",
|
||
|
icon:"iconsuofang"
|
||
|
},
|
||
|
{
|
||
|
tab:"修剪(T)",
|
||
|
icon:"iconxiujian"
|
||
|
},
|
||
|
{
|
||
|
tab:"延伸(D)",
|
||
|
icon:"iconyanshen"
|
||
|
},
|
||
|
{
|
||
|
tab:"导角(C)",
|
||
|
icon:"icondaojiaoshubiaoyangshi_"
|
||
|
},
|
||
|
{
|
||
|
tab:"圆角(F)",
|
||
|
icon:"iconyuanjiao"
|
||
|
},
|
||
|
{
|
||
|
tab:"离散(M)",
|
||
|
icon:"iconlisanshuju-01"
|
||
|
},
|
||
|
{
|
||
|
tab:"分解(X)",
|
||
|
icon:"iconfenjie"
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
title:"帮助(H)",
|
||
|
list:[
|
||
|
{
|
||
|
tab:"设置(S)"
|
||
|
},
|
||
|
{
|
||
|
tab:"热键快捷命令(Q)"
|
||
|
},
|
||
|
{
|
||
|
tab:"关于(A)"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
];
|
||
|
|
||
|
// 右侧按钮栏
|
||
|
const mRighButtonBarData = {
|
||
|
isShow: true,
|
||
|
buttonBarData: [{
|
||
|
icon: "iconziti",
|
||
|
id: 1,
|
||
|
prompt: "字体",
|
||
|
},
|
||
|
{
|
||
|
icon: "icondashujukeshihuaico-",
|
||
|
id: 2,
|
||
|
prompt: "表格",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_zhixian",
|
||
|
id: 3,
|
||
|
prompt: "直线",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_tuoyuanhu",
|
||
|
id: 4,
|
||
|
prompt: "椭圆弧",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_duoduan",
|
||
|
id: 4,
|
||
|
prompt: "多端",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_quxian",
|
||
|
id: 6,
|
||
|
prompt: "曲线",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_xuanding",
|
||
|
id: 7,
|
||
|
prompt: "选定",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconr_xiujian",
|
||
|
id: 8,
|
||
|
prompt: "修剪",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_tuoyuan",
|
||
|
id: 9,
|
||
|
prompt: "椭圆",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconr_hebing",
|
||
|
id: 10,
|
||
|
prompt: "核定",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconr_quxian",
|
||
|
id: 11,
|
||
|
prompt: "曲线",
|
||
|
},
|
||
|
]
|
||
|
};
|
||
|
// 左侧按钮栏
|
||
|
const mLeftButtonBarData = {
|
||
|
isShow: true,
|
||
|
buttonBarData: [
|
||
|
{
|
||
|
icon: "iconl_zhixian",
|
||
|
prompt: "直线",
|
||
|
cmd: "Mx_Line"
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_tuoyuanhu",
|
||
|
prompt: "圆",
|
||
|
cmd: "Mx_Circle"
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_tuoyuanhu",
|
||
|
id: 15,
|
||
|
prompt: "椭圆弧",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_duoduan",
|
||
|
id: 16,
|
||
|
prompt: "多端",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_quxian",
|
||
|
id: 17,
|
||
|
prompt: "曲线",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_xuanding",
|
||
|
id: 18,
|
||
|
prompt: "选定",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconr_xiujian",
|
||
|
id: 19,
|
||
|
prompt: "修剪",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconl_tuoyuan",
|
||
|
id: 20,
|
||
|
prompt: "椭圆",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconr_hebing",
|
||
|
id: 21,
|
||
|
prompt: "核定",
|
||
|
},
|
||
|
{
|
||
|
icon: "iconr_quxian",
|
||
|
id: 22,
|
||
|
prompt: "曲线",
|
||
|
},
|
||
|
]
|
||
|
};
|
||
|
|
||
|
|
||
|
// 层Com盒数据
|
||
|
const mLayerComboxData = {
|
||
|
isShow: true,
|
||
|
selectionBarData: [
|
||
|
{
|
||
|
state: {
|
||
|
isLock: true,
|
||
|
isEyes: true,
|
||
|
isSun: true,
|
||
|
isColor: "#FFFFFF",
|
||
|
index: 1
|
||
|
},
|
||
|
text: "O"
|
||
|
},
|
||
|
{
|
||
|
state: {
|
||
|
isLock: true,
|
||
|
isEyes: true,
|
||
|
isSun: true,
|
||
|
isColor: "#FFFFFF",
|
||
|
index: 2
|
||
|
},
|
||
|
text: "O"
|
||
|
},
|
||
|
{
|
||
|
state: {
|
||
|
isLock: true,
|
||
|
isEyes: true,
|
||
|
isSun: true,
|
||
|
isColor: "#FFFFFF",
|
||
|
index: 3
|
||
|
},
|
||
|
text: "OP"
|
||
|
},
|
||
|
{
|
||
|
state: {
|
||
|
isLock: true,
|
||
|
isEyes: true,
|
||
|
isSun: true,
|
||
|
isColor: "#FFFFFF",
|
||
|
index: 4
|
||
|
},
|
||
|
text: "A"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
|
||
|
// 颜色盒子数据
|
||
|
const mColorComboxData = {
|
||
|
isShow: true,
|
||
|
selectionBarData: [{
|
||
|
state: {
|
||
|
isColor: "#FFFFFF",
|
||
|
index: 1
|
||
|
},
|
||
|
text: "白"
|
||
|
},
|
||
|
{
|
||
|
state: {
|
||
|
isColor: "#000000",
|
||
|
index: 2
|
||
|
},
|
||
|
text: "黑"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
// 线型盒子数据
|
||
|
const mLinetypeComboxData = {
|
||
|
isShow: true,
|
||
|
selectionBarData: [{
|
||
|
state: {
|
||
|
previewImg: "../../assets/xainjihe.png",
|
||
|
index: 1
|
||
|
},
|
||
|
text: "ByLay2er",
|
||
|
},
|
||
|
{
|
||
|
state: {
|
||
|
previewImg: "../../assets/xainjihe.png",
|
||
|
index: 2
|
||
|
},
|
||
|
text: "ByLa1yer",
|
||
|
},
|
||
|
{
|
||
|
state: {
|
||
|
previewImg: "../../assets/xainjihe.png",
|
||
|
index: 3
|
||
|
},
|
||
|
text: "ByLa3yer",
|
||
|
},
|
||
|
{
|
||
|
state: {
|
||
|
previewImg: "../../assets/xainjihe.png",
|
||
|
index: 4
|
||
|
},
|
||
|
text: "ByLay4er",
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
// 底部数据
|
||
|
const mFooterData = {
|
||
|
isShow: true,
|
||
|
bottomBarData: {}
|
||
|
};
|
||
|
|
||
|
const CursorType = {
|
||
|
kNormal: "cursor3",
|
||
|
kRect: "cursor1",
|
||
|
kCross: "cursor2"
|
||
|
}
|
||
|
|
||
|
const mQuickCommand = [
|
||
|
["Mx_Line", "l", "line", "li", "_line"],
|
||
|
["Mx_Circle", "circle", "c", "cir", "_circle"]
|
||
|
];
|
||
|
|
||
|
|
||
|
let mSetCoordFun = undefined;
|
||
|
|
||
|
let mUpdateCursorFun = undefined;
|
||
|
|
||
|
|
||
|
let mOnLayerComboxSelectEvent = undefined;
|
||
|
|
||
|
let mOnKeydownEvent = undefined;
|
||
|
|
||
|
let mCursorType = CursorType.kNormal;
|
||
|
|
||
|
let mComandLine = new MxVueComandLine();
|
||
|
|
||
|
let mdynamicInput = new MxDynamicInput();
|
||
|
|
||
|
let mMxEvents = {};
|
||
|
|
||
|
this.mountSetCoordFun = function (fun) {
|
||
|
mSetCoordFun = fun;
|
||
|
}
|
||
|
|
||
|
this.mountUpdateCursorFun = function (fun) {
|
||
|
mUpdateCursorFun = fun;
|
||
|
}
|
||
|
|
||
|
|
||
|
this.mountLayerComboxSelectEvnet = function (fun) {
|
||
|
mOnLayerComboxSelectEvent = fun;
|
||
|
}
|
||
|
|
||
|
this.mountKeydownEvent = function (fun) {
|
||
|
mOnKeydownEvent = fun;
|
||
|
}
|
||
|
|
||
|
|
||
|
// vue界面上,图层被选择了,的通知消息。
|
||
|
this.onLayerComboxSelect = function (str) {
|
||
|
if (mOnLayerComboxSelectEvent == undefined) {
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
mOnLayerComboxSelectEvent(str);
|
||
|
}
|
||
|
|
||
|
this.onKeydown = function (keyCode) {
|
||
|
if (mOnKeydownEvent == undefined) {
|
||
|
return;
|
||
|
}
|
||
|
mOnKeydownEvent(keyCode);
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
this.setTipCoord = function (str) {
|
||
|
if (mSetCoordFun == undefined) {
|
||
|
return;
|
||
|
}
|
||
|
mSetCoordFun(str);
|
||
|
}
|
||
|
|
||
|
this.getCursorType = function () {
|
||
|
return mCursorType;
|
||
|
}
|
||
|
|
||
|
|
||
|
this.setCursorType = function (curtype) {
|
||
|
|
||
|
if (typeof (curtype) == "number") {
|
||
|
switch (curtype) {
|
||
|
case 0:
|
||
|
{
|
||
|
mCursorType = CursorType.kNormal;
|
||
|
break;
|
||
|
}
|
||
|
|
||
|
case 1:
|
||
|
{
|
||
|
mCursorType = CursorType.kRect;
|
||
|
break;
|
||
|
}
|
||
|
case 2:
|
||
|
{
|
||
|
mCursorType = CursorType.kCross;
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
else {
|
||
|
mCursorType = curtype;
|
||
|
}
|
||
|
|
||
|
if (mUpdateCursorFun == undefined) {
|
||
|
return;
|
||
|
}
|
||
|
mUpdateCursorFun();
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
this.getTitle = function () {
|
||
|
return mTitle;
|
||
|
}
|
||
|
|
||
|
this.getTopButtonBarData = function () {
|
||
|
return mTopButtonBarData;
|
||
|
}
|
||
|
|
||
|
this.getMenuBarData = function () {
|
||
|
return mMenuBarData;
|
||
|
}
|
||
|
|
||
|
this.getRighButtonBarData = function () {
|
||
|
return mRighButtonBarData;
|
||
|
}
|
||
|
|
||
|
this.getLeftButtonBarData = function () {
|
||
|
return mLeftButtonBarData;
|
||
|
}
|
||
|
|
||
|
|
||
|
this.getTitleButtonBarData = function () {
|
||
|
return mTitleButtonBarData;
|
||
|
}
|
||
|
|
||
|
|
||
|
this.getLayerComboxData = function () {
|
||
|
return mLayerComboxData;
|
||
|
}
|
||
|
|
||
|
this.getColorComboxData = function () {
|
||
|
return mColorComboxData;
|
||
|
}
|
||
|
|
||
|
|
||
|
this.getLinetypeComboxData = function () {
|
||
|
return mLinetypeComboxData;
|
||
|
}
|
||
|
|
||
|
this.getFooterData = function () {
|
||
|
return mFooterData;
|
||
|
}
|
||
|
|
||
|
this.sendStringToExecute = function (sCmd) {
|
||
|
MxFun.sendStringToExecute(sCmd)
|
||
|
}
|
||
|
|
||
|
this.getCmdLine = function () {
|
||
|
return mComandLine;
|
||
|
}
|
||
|
|
||
|
this.getDynamicInput = function(){
|
||
|
return mdynamicInput;
|
||
|
}
|
||
|
|
||
|
this.init = function () {
|
||
|
MxFun.initQuickCommand(mQuickCommand);
|
||
|
}
|
||
|
|
||
|
this.OnMxEvent = function(event){
|
||
|
let eventName = event["name"];
|
||
|
if(eventName == undefined){
|
||
|
return;
|
||
|
}
|
||
|
let call = mMxEvents[eventName];
|
||
|
if(call == undefined){
|
||
|
return;
|
||
|
}
|
||
|
call(event["param"]);
|
||
|
}
|
||
|
|
||
|
this.mountMxEvent = function(name,call){
|
||
|
mMxEvents[name] = call;
|
||
|
}
|
||
|
|
||
|
}
|
||
|
var mxvue = new MxVueInterface()
|