Vektorgrafiken eignen sich hervorragend zur Veranschaulichung. Moleküle bestehen aus Atomen, die durch Bindungen verbunden sind. Ich möchte, dass die Bearbeitung einer Zeichnung einer chemischen Struktur gemäß der physikalischen Struktur von Molekülen ausgeführt wird: Wählen Sie ein Atom aus, übertragen Sie es, drehen Sie ein Fragment eines Moleküls, signieren Sie ... Fast alle Visualisierer von Atomstrukturen exportieren der Blick auf ein Raster, was die Erstellung von Illustrationen erschwert. In diesem Beitrag werde ich erklären, wie 3D-Strukturen im Vektorformat gerendert werden und wie PostScript Ihnen dabei helfen kann .
Viele Programme können Strukturen in Vektorgrafiken exportieren: SVG, PDF, EPS. Dies geschieht jedoch oft nur formal - die resultierenden Bilder bestehen aus vielen Grundelementen, es ist fast unmöglich, sie durch Atome und Bindungen zu zerlegen. Die Größe einer solchen Vektordatei ist ebenfalls groß, kurz gesagt, es ist eine Katastrophe. Von den vielen molekularen Konstruktoren erfüllen nur zwei die Qualität des Vektorbildcodes: GaussView und Molden . Das letztere Programm steht jedem zur Verfügung, daher werden die Beispiele mit seiner Hilfe erstellt. Alle folgenden Rezepte gelten jedoch (mit einigen Änderungen) für die vom GaussView-Programm erstellten Vektorabbildungen. Also Molden!
, PostScript.
PostScript
:
%!PS-Adobe-2.0 EPSF-2.0
%%Title: Molden
%%For: Schaft
%%Creator: Drs G Schaftenaar
%%DocumentFonts: Courier
%%Pages (atend)
%%BoundingBox: 0 0 612 792
%%EndComments
%
%###### User Preferences ############
%
%---- SIZE AND ORIENTATION OF THE PLOT ---
%
/size { 0.24 } def
%---- These number can be negative -------
/originx { 39.0 } def
/originy { 753.0 } def
/angle { -90.0 } def
%For Portrait use
%/originx { 40.0 } def
%/originy { 240.0 } def
%/angle { 0.0 } def
%and BoundingBox: 25 255 535 765
- \doatom
, - \dorod
. Molden.
%---- Include Tabel & Logo, Fontsize -----
/tabel {true} def
/titleandlogo {true} def % false!
, 4082 . .
.
%---- SET BOND RENDERING: ---------------
%---- shadedrod, whiterod, blackrod -----
%
/doatom { dosketchysmoothatom } def
/dorod { sketchyshadedrod } def
%
% ( )
/dosketchysmoothatom % doatom
{ gsave
rx ry translate
90 -15 1 % 90 1 1 -
{ gsave
dup cos hue exch satu exch sethsbcolor sin dup scale
newpath
0 0 rad 0 360 arc
closepath fill grestore } for
grestore } def
/sketchyshadedrod
{ gsave
x1 y1 translate
x2 x1 neg add
y2 y1 neg add
{atan neg rotate} stopped not {
85 -15 0 % 87 -3 0 -
{dup
gsave
newpath
cos 1.0 cosb 0.5 mul neg add mul
hue exch satu exch sethsbcolor
sin 1.0 scale
1 cosb scale
0 0 hd 0 180 arcn
x2 x1 neg add dup mul
y2 y1 neg add dup mul
add sqrt
0 cosb eq {/cosb 1.0 def} if 0 exch cosb div translate
0 0 hd 180 360 arc
closepath fill
grestore } for
} if
grestore } def
!
/doatom { docirclecoloratom } def
/dorod { dostick } def
% , ,
/stickwidth {16} def
/stickgreycolor {0} def
/strokelinewidth {4} def
/docirclecoloratom
{ gsave
strokelinewidth setlinewidth
rx ry translate
newpath 0 0 rad 0 360 arc closepath
gsave
hue satu 1.0 sethsbcolor fill
grestore
stroke
0 0 rad 0.75 mul -60 0 arc
stroke
grestore
} def
% dostick Molden
:
, . - 3 . , , . - . .
/docircleatom
{ gsave
strokelinewidth setlinewidth
rx ry translate
newpath 0 0 rad 0 360 arc closepath
gsave
1 setgray fill
grestore
stroke
gsave
1.00 0.55 scale
0 0 rad 0 180 arc
stroke
grestore
0.55 1.00 scale
0 0 rad -90 90 arcn
stroke
grestore
} def
Dieser Code reduziert die Zeichnung radikal auf Schwarzweiß. Wie in alten Büchern.
Fazit
PostScript ist überraschend gut darin, Illustrationen zu erstellen. Es ist leicht zu lernen. In diesem Beitrag habe ich eine Möglichkeit gegeben, einfache, aber manchmal sehr, sehr notwendige Dinge zu tun, wenn ich eine Veröffentlichung oder ein Poster für eine Konferenz vorbereite. Sie können jedoch noch weiter gehen! Ich kann das Buch Mathematical Illustrations nur empfehlen .