Programming 板


※ 引述《[email protected] (你偷try我帳號喔..~~)》之銘言: > 請問一下 > 我想在console window用"0"和 " "畫一個三角形(給定任意三點座標) > 應該怎麼畫呢?? 有啥演算法嗎?? > 謝謝 畫三角形就是畫三條線段嘛,那就找畫線段的演算法就好了。 (如果你很勤奮,看到這裡就可以去找google了。) 你可以實作點斜式,這是最簡單的答案,缺點是要用到 float。寫程式的書 都會告訴你少用 float,但是你不管也沒有人可以阻擋你,反正現在的機器 很快。 (如果你不是那麼勤奮,但是很想自己動手試試看,那麼現在就可以寫了- 說實在這樣硬幹有它的好處,因為有經過自己構想的過程。[*1]) 如果你想直接了解畫直線的祖傳方法,那就是Bresenham's Line Algorithm. http://en.wikipedia.org/wiki/Bresenham%27s_line_algorithm http://en.wikipedia.org/wiki/Bresenham%27s_line_algorithm#Optimization 下面那個連結的版本就是不用float的最佳化演算法。 如果你還想挑戰更現代化的方法,可以實作吳教授的antialiased line algorithm.這個當然就一定要用到 float了。不過這其實很無聊,原因 底下會講。[*2] http://en.wikipedia.org/wiki/Xiaolin_Wu%27s_line_algorithm --- [*1] 以前我寫過一個計算機概論的作業題目,是依照靜電力公式畫出一個電子 接近氫原子核時候的軌跡。我依照一般寫程式的習慣先算第一點,然後其 他點接著第一點畫下去,這樣記憶體使用量為O(1)。結果我後來看到學長 的程式就嚇到,他居然把所有的點都算出來放在陣列裡,然後再畫線。這 樣的記憶體使用量為O(n),如果他要畫320個點,那就是一個320項的陣列。 居然可以這樣濫用記憶體,使我非常驚訝,並且立刻對他感到非常不齒。 後來我再想起來,卻覺得他的寫法並沒有什麼不好。真正的記憶體用量頂 多就是320x2x4B而已,而這樣寫出的程式卻有很簡潔的好處,不需要解釋 為什麼要額外呼叫函數計算第一點。QB又不是舊時代的 GWBasic,不需要 計較那一點點記憶體。 我不是說他的寫法比較好-再寫一次,我還是會用我的寫法。但是對這種 簡單的問題,他的想法並沒有錯。又不是每個程式都要在資源上必須盡量 摳到變態的地步。 可能有人仍然認為這種寫法違反程式專業的discipline,是不能容忍的。 是的,但是你以為是哪一種系的計算機概論會出這種科學計算的題目當作 業? [*2] 我承認這其實很無聊,因為在文字模式下你在亮和暗之間頂多只有一個色 階好用,頂多可以兩個色階,像這樣:(暗)(亮),而這個演算法 在這麼少的顏色數底下跟沒antialias 應該是差不多,在console 下看起 來更是悲慘。想寫的話當然也可以,不過我猜自己從頭歸納一些padding pattern 會更快,例如利用Big5畫線字元▁▂▃▄▅▆▇等等,不要從這 個演算法開始。這純粹是拿來distraction用的。   -- ▄▄▄▄▄▄▄ ▄▄▄▄ ▄▄▄▄▄▄ <telnet://bbs.cs.nctu.edu.tw> █▄▄▄▄█ █ ▄▄▄▄▄█ Player: GOLDMEMBER ▄█▄▄▄▄█ ▄▄▄█ █▄▄▄▄▄ From: 218-160-89-129.dynamic.hine ☆ 次世代BS2 ☆ 可申請個人板 150MB 相簿 http://pic.bs2.to 交大資訊人 250MB
1F:推 ephesians:大家來找碴: 61.231.17.16 01/24 03:15
2F:→ ephesians:Big-O到底是描述時間的成長,還是空間的? 61.231.17.16 01/24 03:15
3F:推 pakker:它只是用來描述複雜度的... 61.224.149.105 01/24 04:13
4F:→ pakker:看要套用在空間或時間上都行? 61.224.149.105 01/24 04:14
5F:推 askeing:樓上應該是正解!? 61.57.90.95 01/24 10:57
6F:推 LPH66:我的觀念和三樓一樣 @@ 219.84.44.21 01/24 20:33
7F:→ LPH66:另外推distraction XD 219.84.44.21 01/24 20:34
8F:推 softwind:原PO專業 專業就是王道 140.129.36.188 01/25 00:42







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草
伺服器連線錯誤,造成您的不便還請多多包涵!
「贊助商連結」






like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:iOS站內搜尋

TOP