1樓:匿名使用者
因為你的excel檔案裡的點沒有按畫圖的順序排列。
正確的順序是:
d1d2
d4d5
d3你要麼改一下excel的內容,要麼在程式里加一段排列各點順序的函式。
手動改excel的內容是最好的辦法。
如果要加排序函式的話,也只能針對外凸多邊形的情況寫。
****************************************====
補充:關於按連線順序排列個點的函式思路(只針對外凸多邊形)已知:若干個點的座標 point(n,x,y)求:以這些點為頂點的凸多邊形的頂點連線順序。
思路:選定一點a(如point(1,,));
求以該點與其餘任意兩點所成的夾角大小(該點為角的頂點),找出最大的夾角;
該最大夾角的兩邊上的點即為所求多邊形中與a相連的點;
至此確定了兩個點的順序,如此類推找出所有點的連線順序。
2樓:匿名使用者
我給你一個更好繪製多邊形,並計算其面積和周長的方法。
使用cad中的多段線,通過vb呼叫cad後建立輕量多段線,建立多段線用的是一維座標陣列,陣列中的座標元素順序是:x(0),y(0),x(1),y(1)....,不用首尾使用一個節點,使用多段線的closed方法,直接形成閉合的多段線,而且多段線有面積和周長的屬性,直接讀取就可以。
希望採納。
cad畫圖問題
cad畫圖九不要 一 不要輕易在特性管理器裡修改單個線段的線型比例 通常在剛開始繪圖的時候,要用到中心線的線型,而初始繪圖時很可能線型比例設定的不合適,導致我們看到畫出來的線是一條實線而不是中心線。ltscale改變的線型比例是整個圖形裡所有線段的線型比例,而在選中物件後在特性管理器裡修改的線型比例...
VB問題,急,高手來,有追加,VB問題 求解
產生 a,b 的隨機函式。int rnd b a 1 a 在使用前首先要用randmoize函式播種如果還有什麼問題可以給我發郵件。先把問題發上來啊。rand 隨機函式,產生的資料並不是正式的隨機,而是按照一定規律產生的雜湊資料。每次重新啟動電腦後,產生的資料序列會一樣的。vb 只有 rnd 函式,...
cad畫圖問題?如下圖所示,怎樣閉合兩個開口,還不能出界
extend 延伸命令 選擇右邊的線,確認後選左邊的兩根線 ok 按ex,按空格鍵兩次,點兩個線頭即可延長 用延伸工具,直接選定兩條橫線,讓他們延伸到豎線上就能達到你想要的效果。cad最下端的物件捕捉看點下去沒,沒的話點下,然後右鍵 設定裡把端點勾上,再畫就行了。用延伸命令,按提示操作就可以咯 ca...