您好,登錄后才能下訂單哦!
多段線又被稱為多義線,表示一起畫的都是連在一起的一個(gè)復(fù)合對(duì)象,可以是直線也可以是圓弧并且它們還可以加不同的寬度。
主要用到函數(shù)說明:
_DMxDrawX::PathLineTo
把路徑下一個(gè)點(diǎn)移到指定位置。詳細(xì)說明如下:
參數(shù) | 說明 |
DOUBLE dX | 點(diǎn)的X坐標(biāo) |
DOUBLE dY | 點(diǎn)的Y坐標(biāo) |
_DMxDrawX::DrawPathToPolyline
把路徑變成一個(gè)Polyline。
js中實(shí)現(xiàn)代碼說明:
function?DrawPolyline()?{ ????//Polyline?又稱多義線,就是可以繪制多條首尾相連的線,也可以是圓弧相連,同是可以指定線的開始和結(jié)束寬。 ? ????//把顏色改回黑白色 ????mxOcx.DrawCADColorIndex?=?0; ? ????//把線型改成實(shí)線 ????mxOcx.LineType?=?""; ? ????//設(shè)置線寬?4 ????mxOcx.LineWidth?=?0; ? ????//創(chuàng)建一個(gè)圖層,名為"PolylineLayer" ????mxOcx.AddLayer("PolylineLayer");?; ? ????//設(shè)置當(dāng)前圖層為"PolylineLayer" ????mxOcx.LayerName?=?"PolylineLayer"; ? ? ????//《---------------------------------------》 ????//用Plyline顯示繪制矩形框 ? ????//定義一個(gè)路徑的開始點(diǎn) ????mxOcx.PathMoveTo(0,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(100,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(100,?400); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(0,?400); ? ????//把路徑設(shè)置成閉合 ????mxOcx.PathMakeClosed(); ? ? ????//把路徑閉合,生成一個(gè)矩形框 ????mxOcx.DrawPathToPolyline(); ? ????//《---------------------------------------》 ????//繪制一個(gè)有寬度,帶線型的矩形框 ????//定義一個(gè)路徑的開始點(diǎn) ????mxOcx.PathMoveTo(200,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(300,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(300,?400); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(200,?400); ? ????//把路徑設(shè)置成閉合 ????mxOcx.PathMakeClosed(); ? ????mxOcx.AddLinetype("MyLineType3",?"30,-10"); ? ????mxOcx.LineType?=?"MyLineType3"; ? ????mxOcx.DrawCADColorIndex?=?255; ? ????mxOcx.LineWidth?=?5; ? ????mxOcx.DrawPathToPolyline(); ? ????//《---------------------------------------》 ????//繪制一個(gè)有寬度的矩形框 ????//定義一個(gè)路徑的開始點(diǎn) ????mxOcx.PathMoveTo(400,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(500,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(500,?400); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(400,?400); ? ????//把路徑設(shè)置成閉合 ????mxOcx.PathMakeClosed(); ? ????mxOcx.LineType?=?(""); ? ????mxOcx.DrawCADColor?=?65280; ? ????mxOcx.LineWidth?=?10; ? ????mxOcx.DrawPathToPolyline(); ? ? ????//《---------------------------------------》 ????//繪制一個(gè)有寬度的矩形框 ????//定義一個(gè)路徑的開始點(diǎn) ????mxOcx.PathMoveTo(400,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(500,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(500,?400); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(400,?400); ? ????//把路徑設(shè)置成閉合 ????mxOcx.PathMakeClosed(); ? ????mxOcx.LineType?=?""; ? ????mxOcx.DrawCADColor?=?65280; ? ????mxOcx.LineWidth?=?10; ? ????mxOcx.DrawPathToPolyline(); ? ????//《---------------------------------------》 ????//繪制一個(gè)有寬度的,不閉合的矩形框 ????//定義一個(gè)路徑的開始點(diǎn) ????mxOcx.PathMoveTo(600,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(700,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(700,?400); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(600,?400); ? ????//把路徑設(shè)置成閉合 ????mxOcx.LineType?=?""; ? ????mxOcx.DrawCADColor?=?65280; ? ????mxOcx.LineWidth?=?10; ? ????mxOcx.DrawPathToPolyline(); ? ? ????//《---------------------------------------》 ????//繪制一個(gè)有寬度的,三角形 ????//定義一個(gè)路徑的開始點(diǎn) ????mxOcx.PathMoveTo(800,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(900,?300); ? ????//路徑的一下個(gè)點(diǎn) ????mxOcx.PathLineTo(900,?400); ? ????mxOcx.PathMakeClosed(); ? ????//把路徑設(shè)置成閉合 ????mxOcx.LineType?=?""; ? ????mxOcx.DrawCADColor?=?65280; ? ????mxOcx.LineWidth?=?10; ? ????mxOcx.DrawPathToPolyline(); ? ? ????//《---------------------------------------》 ????//繪制一個(gè)箭頭 ????mxOcx.PathMoveToEx(1000,?300,?10,?10,?0); ? ????mxOcx.PathLineToEx(1000,?500,?30,?0,?0); ? ????mxOcx.PathLineTo(1000,?580); ? ????mxOcx.DrawPathToPolyline(); ? ? ????//《---------------------------------------》 ????//繪制一個(gè)虛線箭頭 ????mxOcx.PathMoveToEx(1200,?300,?10,?10,?0); ? ????mxOcx.PathLineToEx(1200,?500,?30,?0,?0); ? ????mxOcx.PathLineTo(1200,?580); ? ????mxOcx.DrawCADColor?=?65535; ? ????mxOcx.LineType?=?("MyLineType3"); ? ????mxOcx.DrawPathToPolyline(); ? ????//《---------------------------------------》 ????//繪制一個(gè)圓弧箭頭,-0.34是圓弧的凸度. ? ????//axMxDrawX1.PathMoveToEx?1400,?300,?10,?10,?-0.34); ????mxOcx.PathMoveToEx(1400,?300,?10,?10,?-0.34); ? ????mxOcx.PathLineToEx(1400,?500,?30,?0,?0.34); ? ????mxOcx.PathLineTo(1400,?600); ? ????mxOcx.DrawCADColor?=?16776960; ? ????mxOcx.LineType?=?"MyLineType3"; ? ????mxOcx.DrawPathToPolyline(); ? ? ????//《---------------------------------------》 ????//把所有的實(shí)體都放到當(dāng)前顯示視區(qū) ????mxOcx.ZoomAll(); ? ????//更新視區(qū)顯示 ????mxOcx.UpdateDisplay(); }
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。