回覆列表
  • 1 # 使用者8439918757236

    繪圖工具很多,不同的圖形有不同的自然表達方式。用專門為特定問題設計的合適的繪圖工具來畫圖,通常效果最好,效率也高。所以在可能的情況下,我們儘量用適合問題的工具。另一方面,使用你熟悉的工具效率也高。所以在可能的情況下,我們儘量用自己熟悉的工具。人的精力是有限的,學習和熟悉工具也需要時間。所以在可能的情況下,我們希望少學新工具或者只學簡單的工具。這幾條道理很簡單,除了繪圖工具在很多地方也都是一樣的道理。可惜這幾個原則是有衝突的,越專門的工具越得多學幾樣才能應付工作,越通用的工具使用起來相對越不方便,學的工具越少就對工具越不熟悉,往往如此。 所以,你需要對你自己要做的事情,要花的精力有個充分的估計。然後取個好的折衷。換句話說,你瞭解你自己要畫的圖形和不同工具適合畫的圖形,挑選適合自己的工具。TikZ 與 MetaPost 都是程式碼作圖工具,適合畫能用座標表示的精確圖形。不過二者也有差別。MetaPost 脫胎於字型設計語言 MetaFont,其語法可以用相對直觀的方式精確描述 Bézier 曲線,又自帶語法方便的線性方程求解功能、圖形的線性變換功能,因而有很強的二維曲線造型功能;同時又有宏定義、迴圈、分支等程式結構,可以表達較複雜的數學圖形;同時可以插入 TeX 程式碼的文字、公式。所以用 MetaPost 來畫有數學描述的、數值或半數值化的、有 TeX 公式的曲線或直線圖是最適合的,在一些已有的宏支援下也適合資料結構圖。舉個例子的話,比如說,L-system 定義的分形曲線,集合論裡面的 Venn 圖,正十七邊形或五角星,射影幾何裡面 Desargues 定理的配圖,計算機科學中的 B+ 樹,都挺合適。TikZ 是由 TeX 宏編寫的宏包,抽象掉底層 pdfTeX 這樣的引擎或 Dvips、dvipdfmx 這樣的輸出驅動來完成實際的繪圖工作。在功能上借鑑 PSTricks,在語法上也部分借鑑 MetaPost。由於 TeX 宏本身的限制,TikZ 在曲線造型、數值計算、複雜資料結構組織上,雖然也能做,但效率比較低;優勢是開發比較深入,預定義的功能多,能直接用的包比較多,作為宏包與 TeX 結合也最緊密。適合畫簡單的小符號,資料結構圖,計算量不太大的數學圖形等。適合做的圖形與 MetaPost 有不少重疊的,比如集合論的 Venn 圖,正十七邊形或五角星,簡單流程圖,資料結構圖;也包括自己獨有優勢的如數學符號標記,圖表標註,數學交換圖等。現在在 luatex 的幫助下也能完成一些複雜計算,比如複雜函式圖,圖視覺化。所以,如果你要畫的圖形與工具擅長的方面一致,又畫的比較多肯花時間熟悉,那學這些東西就有用。

  • 中秋節和大豐收的關聯?
  • 格美匯淨水器要怎麼保養才好?