VietTUG.org - old forum - threads' archive

thread_id = 1784, contains 1784
id = 1784, parent = 0, thread = 1784, catid = 17, locked = 0, moved = 0,
userid = tsnsidon, ip = 125.234.128.189, time = 2006/04/13 (1144876306) ,
subject = Đôi nét về ngôn ngữ vẽ hình Eukleides, hits = 800, karma = 0+0-,
admin: bài của longgia2001 & Mr. Chú

EUKLEIDES cái nhìn đầu tiên, một số so sánh, ưu nhược điểm so với các phần mềm (gói lệnh) vẽ khác trong môi trường TeX.

1. Eukleides (viết theo kiểu Hy Lạp nên rất dễ sai chính tả , mà sai chính tả thì ra đồ khác mất: Euklide, Euclid cũng là các phần mềm vẽ) là một trung gian chuyển tải từ ngôn ngữ hình học "giang hồ" (đời thường) sang pst. Thực chất, nó là một lớp vỏ cho pstricks.

Ví dụ: Các bài toán thường phát biểu như sau:

Cho tam giác ABC, đường cao AM, trung tuyến AH, trọng tâm G ...

Mô tả trong ngôn ngữ Eukleides như sau:

A B C triangle
M=barycenter(B,C) % M là tâm tỉ cự - mặc định tỉ lệ 1:1
H=projection(A, line(B,C)) % H là hình chiếu của A lên đường thẳng BC
G=barycenter(A,1,M,-2) % Trọng tâm G rõ ràng là tâm tỉ cự tỉ lệ 1:-2
                                  % Nói cách khác 1X\vec{GA}=-2X\vec{GM}
draw(A, B, C)                % Vẽ tam giác ABC
draw(segment(A, M))     % Vẽ (đoạn) trung tuyến
draw(segment(A, H))     % Vẽ (đoạn) đường cao
draw(G)                        % Điểm mụt ruồi: trọng tâm


2. Căn cứ trên triết lý đó, cái được của Eukleides là ngôn ngữ dễ hiểu, dễ học, và gần gũi với ngôn ngữ thường ngày.

2'. Quan điểm của Eukleides là tạo ra một công cụ vẽ hình cấp cao, không phải sờ đến tọa độ Đề các, hay hệ tọa độ cực (Mặc dù bản thân nó cũng cung cấp công cụ để mần với tọa độ).

%A B C triangle % Nếu muốn chỉ rõ tọa độ ta mần như sau:

A=point (0,0) % Cho theo tọa đề các
B=point (2, sqrt(3)) % Có thể sử dụng một số hàm toán học tính toán nhẹ nhàng
C=point ( sqrt(7), -60: ) % Cho theo tọa độ cực - bán kính Căn 7, góc âm 60 độ

D=point (3,-pi/6< )       % Theo tọa độ cực, bán kính 3, góc - PI/6 Radian

M=barycenter(B,C) % M là tâm tỉ cự - mặc định tỉ lệ 1:1
H=projection(A, line(B,C)) % H là hình chiếu của A lên đường thẳng BC
G=barycenter(A,1,M,-2) % Trọng tâm G rõ ràng là tâm tỉ cự tỉ lệ 1:-2
                                  % Nói cách khác 1X\vec{GA}=-2X\vec{GM}
draw(A, B, C)                % Vẽ tam giác ABC
draw(segment(A, M))     % Vẽ (đoạn) trung tuyến
draw(segment(A, H))     % Vẽ (đoạn) đường cao
draw(G)                        % Điểm mụt ruồi: trọng tâm


Hệ quả (tốt) là sau này có muốn điều chỉnh, xào, hay luộc lại, đều rất dễ dàng. Điều này luôn được đánh giá cao, vì kinh nghiệm nhiều người đã phải vã mồ hôi để mần mấy cái hình pst với tọa độ tuyệt đối.

3. Eukleides được phát hành cùng một cái vỏ (GUI) Xeukleides - chạy trên cả linux và Windows - đơn giản nhưng hiệu quả. Chỉ có 2 chế độ CODE & PREVIEW
http://viettug.org/images/rsgallery/original/xeukleides__1.png

http://viettug.org/images/rsgallery/original/xeukleides__2.png

3'. Eukleides cung cấp công cụ tương tác interactive (một loại biến số có thể thay đổi bằng keyboard), giúp người vẽ có thể cân chỉnh hình hảnh gần như wisywig. Ví dụ, một điểm có tọa độ (x,y) có thể được kiểm soát tọa độ thông qua 2 biến, tọa độ đó được ghi nháp vào một góc màn hình. Đến vị trí thỏa màn yêu cầu, lấy giấy bút ghi lại (hơi thủ công nhỉ ) Sau đó, phán cái tọa độ cần tìm vào. Eukleides có khả năng kiểm soát 26 đứa interactive như vậy.

4. Euk cung cấp hai giải pháp:
a. euk --> eps (\me hay chơi kiểu này)
b. euk --> tex (pstricks source)
Thế là quá đủ với TeXers

5. Cái mất: Vì nó chỉ là một bộ phận con của pstrick (phát triển trên nền tảng pstricks) nên có nhiều thứ kỳ diệu của pstricks mà nó làm không được... Nói cách khác nó cũng là dạng con của pstricks như xy-pic, hay xy-diag gì đó thôi ....

6. Cái mất thứ hai (so với metapost) là mỗi hình phải mần một file, không gom đũa cả nắm như metapost được.

CUỐI CÙNG

Cái mà dùng Eukleides làm được và dùng metapost hay pst trực tiếp không làm được, đó là việc chuyển zao công nghệ vẽ hình... Sau nhiều lần bị lắc đầu (epic, eepic, pstricks, metapost), cuối cùng cũng chuyển giao xong cái công nghệ vẽ: eukleides

KẾT LUẬN:

Eukleides rất tốt, nhưng không phải là số một. Và tôi cũng tin rằng không có công cụ nào là số một, quan trọng nhất vẫn là việc lựa chọn sao cho phù hợp giữa công cụ và mục đích công việc.