Changeset 11
- Timestamp:
- 04/06/08 16:24:30 (8 months ago)
- Files:
-
- trunk/pst-solides3d.tex (modified) (2 diffs)
- trunk/solides.pro (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/pst-solides3d.tex
r10 r11 11 11 \ifx\MultidoLoaded\endinput\else\input multido.tex \fi 12 12 % JPV & ML & AS 13 \def\fileversion{3.0 6}13 \def\fileversion{3.07} 14 14 \def\filedate{2008/04/06} 15 15 \message{`PSTSOLIDESIIID' v\fileversion, \filedate} … … 216 216 grille,prisme,anneau,parallelepiped,prismecreux,ruban,calottesphere,face,% 217 217 surface,calottespherecreuse,polygoneregulier,fusion,new,chemin,courbeR2,courbe,% 218 surfaceparametree,texte,trigospherique,vecteur,ligne,objfile,datfile }218 surfaceparametree,texte,trigospherique,vecteur,ligne,objfile,datfile,surface*} 219 219 %% Reservation de macros correspondants aux objects 220 220 \pst@solides@reservednames{object} trunk/solides.pro
r9 r11 1 1 %! 2 2 % PostScript prologue for pst-solides3d.tex. 3 % Version 3.0 5, 2008/03/213 % Version 3.06, 2008/04/06 4 4 % 5 5 %% COPYRIGHT 2008 by Jean-Paul Vignault, Manuel Luque … … 4866 4866 theta cos r j mul K div mul 4867 4867 theta sin r j mul K div mul 4868 2 copy exch atan 90 div 4868 2 copy f %exch atan 90 div 4869 } for 4870 } for 4871 ] def 4872 4873 S F generesolid 4874 end 4875 } def 4876 4877 %% syntaxe : r [dx dy] {f} newsurface* -> solid 4878 /newsurface* { 4879 7 dict begin 4880 /f_surface exch def 4881 [[/nx /ny] [6 6] [6 8] [10 8] [16 12] [16 36]] gestionsolidmode 4882 4883 %% ny = nb de meridiens 4884 %% nx = nb d horizontales 4885 4886 /r exch def 4887 nx isinteger not { 4888 %% alors nx est un dx 4889 /nx r nx div cvi store 4890 } if 4891 ny isinteger not { 4892 %% alors ny est un dy 4893 /ny 360 ny div cvi store 4894 } if 4895 /dy r ny div def %% le pas sur y 4896 /dx r nx div def %% le pas sur x 4897 4898 /F [ 4899 %% 1er etage 4900 1 1 ny { 4901 /i exch def 4902 [0 i i ny mod 1 add] 4903 } for 4904 %% etages suivants 4905 0 1 nx 2 sub { 4906 /j exch def 4907 1 1 ny { 4908 /i exch def 4909 [i j ny mul add 4910 i ny add j ny mul add 4911 i ny mod ny add 1 add j ny mul add 4912 i ny mod 1 add j ny mul add] 4913 } for 4914 } for 4915 ] def 4916 4917 %% tableau des sommets 4918 /S [ 4919 0 0 0 4920 1 1 nx { 4921 /j exch def 4922 1 1 ny { 4923 /i exch def 4924 /theta i 360 mul ny div def 4925 theta cos r j mul nx div mul 4926 theta sin r j mul nx div mul 4927 2 copy f_surface 4869 4928 } for 4870 4929 } for … … 6726 6785 } def 6727 6786 6787 /pst-surface* { 6788 r 6789 ngrid length 2 ge { 6790 [ngrid 0 get ngrid 1 get] 6791 } { 6792 ngrid length 1 eq { 6793 [ngrid 0 get dup] 6794 } if 6795 } ifelse 6796 { function cvx exec } newsurface* 6797 dup videsolid 6798 gere_pstricks_opt 6799 } def 6800 6728 6801 /pst-vecteur { 6729 6802 gsave
