- Questo topic ha 12 risposte, 4 partecipanti ed è stato aggiornato l'ultima volta 15 anni fa da
admin.
-
CreatoreTopic
-
19 Giugno 2011 alle 21:33 #60236::
Ciao a tutti,ho incominciato ad imparare ad usare Lua e di conseguenza LuaLaTeX. Visto che ci è stato un periodo in cui facevo largo uso del programma Sketch(il sito si trova qui) mi sono domandato se non era possibile fare qualcosa del genere in LuaLaTeX.
L’idea è quella di aprire un ambiente tikzpicture con dentro un comando \directlua dove dentro creare la scena e stamparla con i comandi usuali di tikz.
Con un codice del genere:
`% !TEX encoding = UTF-8
% !TEX program = LuaLaTeX
% !TEX spellcheck = en_GB
\documentclass{standalone}\usepackage{tikz}
\input{LuaSketch.tex}
\begin{document}
\centering\begin{tikzpicture}[line join=round]
\directlua{
eye = {0,0,5}
look_at = {1,4,0}
theta = 0lp = 7
pavimento = CreatePolygon({{-lp,-lp,0},
{ lp,-lp,0},
{ lp, lp,0},
{-lp, lp,0}})Hlegs = 5
gamba1 = CreateParallelepiped({-(lp-1),-(lp-1),0},{.7,.7,Hlegs})
gamba2 = translate(gamba1,{11,0,0})
gamba3 = translate(gamba1,{11,11,0})
gamba4 = translate(gamba1,{0,11,0})
tavola = CreateParallelepiped({-6.5,-6.5,0},{13,13,.5})
tavola = translate(tavola,{0,0,Hlegs})base_vaso = CreateArc(.25,{-1,-1,7.5},360,10)
vaso = CreateCylinder(base_vaso,{0,0,1},1)sfera = CreateSphere(.5,{4,0,8},10,5)
PrintTikZ(eye,look_at,theta,pavimento)
PrintTikZ(eye,look_at,theta,gamba1)
PrintTikZ(eye,look_at,theta,gamba2)
PrintTikZ(eye,look_at,theta,gamba3)
PrintTikZ(eye,look_at,theta,gamba4)
PrintTikZ(eye,look_at,theta,tavola)
PrintTikZ(eye,look_at,theta,vaso)
PrintTikZ(eye,look_at,theta,sfera)}
\end{tikzpicture}
\end{document}`Ovviamente è lontano dall’essere minimamente terminato questo “progettino”, infatti devo aggiungere l’assegnazione dei colori agli oggetti, l’”algoritmo del pittore” e stampare la scena con un solo comando(e non con tutti i PrintTikZ che si vedono sul codice).
La difficoltà che ho incontrato, visto che uso molto Matlab, è stato gestire i vettori visto che praticamente non esitono funzioni per fare prodotti vettoriali, scalari etc.. quindi mi sono scritto io tutte le funzioni.
Per questo volevo chiedervi se siete a conoscenza di una libreria Lua che sia il corrispettivo di SciPy per Python? Magari caricando una libreria del genere renderei più facile da leggere la parte del codice Lua.
Che ne pensate? Ho scritto questo post per avere dei pareri.
Saluti
Michele
-
CreatoreTopic
-
AutoreRisposte
-
-
20 Giugno 2011 alle 9:53 #60237::
Ciao a tutti,
ho incominciato ad imparare ad usare Lua e di conseguenza LuaLaTeX. Visto che ci è stato un periodo in cui facevo largo uso del programma Sketch(il sito si trova qui) mi sono domandato se non era possibile fare qualcosa del genere in LuaLaTeX.
L’idea è quella di aprire un ambiente tikzpicture con dentro un comando \directlua dove dentro creare la scena e stamparla con i comandi usuali di tikz.
Con un codice del genere:
`% !TEX encoding = UTF-8
% !TEX program = LuaLaTeX
% !TEX spellcheck = en_GB
\documentclass{standalone}\usepackage{tikz}
\input{LuaSketch.tex}
\begin{document}
\centering\begin{tikzpicture}[line join=round]
\directlua{
eye = {0,0,5}
look_at = {1,4,0}
theta = 0lp = 7
pavimento = CreatePolygon({{-lp,-lp,0},
{ lp,-lp,0},
{ lp, lp,0},
{-lp, lp,0}})Hlegs = 5
gamba1 = CreateParallelepiped({-(lp-1),-(lp-1),0},{.7,.7,Hlegs})
gamba2 = translate(gamba1,{11,0,0})
gamba3 = translate(gamba1,{11,11,0})
gamba4 = translate(gamba1,{0,11,0})
tavola = CreateParallelepiped({-6.5,-6.5,0},{13,13,.5})
tavola = translate(tavola,{0,0,Hlegs})base_vaso = CreateArc(.25,{-1,-1,7.5},360,10)
vaso = CreateCylinder(base_vaso,{0,0,1},1)sfera = CreateSphere(.5,{4,0,8},10,5)
PrintTikZ(eye,look_at,theta,pavimento)
PrintTikZ(eye,look_at,theta,gamba1)
PrintTikZ(eye,look_at,theta,gamba2)
PrintTikZ(eye,look_at,theta,gamba3)
PrintTikZ(eye,look_at,theta,gamba4)
PrintTikZ(eye,look_at,theta,tavola)
PrintTikZ(eye,look_at,theta,vaso)
PrintTikZ(eye,look_at,theta,sfera)}
\end{tikzpicture}
\end{document}`Ovviamente è lontano dall’essere minimamente terminato questo “progettino”, infatti devo aggiungere l’assegnazione dei colori agli oggetti, l’”algoritmo del pittore” e stampare la scena con un solo comando(e non con tutti i PrintTikZ che si vedono sul codice).
La difficoltà che ho incontrato, visto che uso molto Matlab, è stato gestire i vettori visto che praticamente non esitono funzioni per fare prodotti vettoriali, scalari etc.. quindi mi sono scritto io tutte le funzioni.
Per questo volevo chiedervi se siete a conoscenza di una libreria Lua che sia il corrispettivo di SciPy per Python? Magari caricando una libreria del genere renderei più facile da leggere la parte del codice Lua.
Che ne pensate? Ho scritto questo post per avere dei pareri.
Saluti
Michele
Molto interessante.
In questo periodo mi sto interessando ad un implementazione di un linguaggio specifico per la creazione di grafici utilizzando pgfplots.
Direi quindi che siamo davanti ad un “nuovo mondo” tutto da esplorare e proprio questo è un ulteriore punto di interesse visto che il modello di sviluppo non centralista della comunità TeX è messo alla prova quanto a coerenza del linguaggio dal fatto stesso che non esistono strade tracciate in questi nuovi paesaggi.Quanto al tuo particolare esempio, io progetterei prima il linguaggio, e cioè il modo in cui l’utente interagisce concettualmente con le proprie idee, ed a questo proposito ho qualche idea.
In un secondo tempo si pensa all’implementazione che può basarsi anche sul motore METAPOST interno di LuaTeX.Se la comunità italiana di “grafici TeX” (ovvero di quelli che programmano la grafica) è abbastanza forte potrebbe uscirne un progetto che addirittura traccia una di quelle strade di cui abbiamo parlato prima.
Bye
-
13 Luglio 2011 alle 23:52 #60238::
Aggiornamenti per chi fosse interessato:Ho dato una bella pulita e riorganizzata a tutto il codice Lua ed ora con un codice come il seguente:
`% !TEX encoding = UTF-8
% !TEX program = LuaLaTeX
% !TEX spellcheck = en_GB
\documentclass{standalone}\usepackage{tikz}
\directlua{
require “math”
dofile(“BasicFunctions.lua”)
dofile(“CreateObjects.lua”)
dofile(“3Dfunctions.lua”)
dofile(“PrintTikZfunctions.lua”)
}\begin{document}
\begin{tikzpicture}[line join=round]
\directlua{
eye = {5,5,4}
look_at = {1,3,2}
theta = 0lp = 7
pavimento = Polygon({-lp,-lp,0},
{ lp,-lp,0},
{ lp, lp,0},
{-lp, lp,0})Hlegs = 5
gamba1 = Parallelepiped({-(lp-1),-(lp-1),0},{.7,.7,Hlegs})
Relica = .7
elica1 = ParametricCurve(“t”,”-5.65+”..Relica..”*math.cos(2*math.pi*t)”,
“-5.65+0.7*math.sin(2*math.pi*t)”,
“5*t/(2*math.pi)”,
0,
2*math.pi,
150)gamba2 = translate(gamba1,{11,0,0})
gamba3 = translate(gamba1,{11,11,0})
gamba4 = translate(gamba1,{0,11,0})
tavola = Parallelepiped({-6.5,-6.5,Hlegs},{13,13,.5})base_vaso = Arc(.25,{1,2,5.5},360,10)
vaso = Cylinder(base_vaso.points,{0,0,1},1)ellissoide = Ellipsoid(1.5,1,.5,{0,-4,6},20,5)
ellissoide = rotate(ellissoide,{0,-4,6},{0,0,1},30)sfera = Sphere(.5,{0,4,6},20,5)
sfera = rotate(sfera,{0,4,6},{1,1,0},30)scena = CreateScene(“pavimento”,
“gamba1″,”gamba2″,”gamba3″,”gamba4”,
“tavola”,”sfera”,”ellissoide”,”vaso”)PrintTikZ(eye,look_at,theta,scena)
}
\end{tikzpicture}
\end{document}`ottengo:
La differenza rispetto a prima è il fatto che non vengono stampati i poligoni le cui normali non sono rivolte verso l’osservatore.
L’obbiettivo ora è di stampare gli oggetti in modo ordinato in modo da nascondere le zone nascoste da oggetti che si trovano più vicino all’osservatore.
Successivamente vorrei aggiungere l’opzione della prospettiva.
Domanda: c’è un modo per tenere le variabili che si creano solamente dentro un \directlua senza renderle globali?
Saluti
Michele
-
14 Luglio 2011 alle 6:22 #60239
-
14 Luglio 2011 alle 8:31 #60240
-
14 Luglio 2011 alle 15:15 #60241::
Molto interessante.
Non ho capito il problema della mancanza di funzioni per il calcolo vettoriale.
Sono presenti sia in Matlab che in Sketch.Ciao,
Agostino…ma non in Lua, o meglio c’è la libreria numlua ma è un progetto “nuovo” ed in costate evoluzione, quindi ho deciso che man mano che mi servivano delle funzioni “base” le avrei scritte io.
La mia idea, comunque, è quella di non scrivere funzioni “complicate” come lo sweep di Sketch, ma eventualmente di scrivere un plug-in di Blender che esporti i modelli come li ho organizzati io(così finalmente imparare ad usare Python).
Michele
-
17 Luglio 2011 alle 13:25 #60242::
c’è la libreria numlua ma è un progetto “nuovo” ed in costate evoluzione, quindi ho deciso che man mano che mi servivano delle funzioni “base” le avrei scritte io.
Prima di reinventare la ruota io darei un’occhiata alla possibilità di caricare librerie scritte in altri linguaggi. Questa è una caratteristica importante di Lua, implementata a basso livello in modo da renderla indipendente dal sistema operativo (più o meno).
La chiamata dovrebbe essere questa qui:
http://www.lua.org/manual/5.1/manual.html#pdf-package.loadlibCi sono diverse librerie in giro. Io comincerei a vedere se si può integrare nel codice Lua la GSL: http://www.gnu.org/software/gsl/
Ciao,
Agostino
-
17 Luglio 2011 alle 16:44 #60243::
Prima di reinventare la ruota io darei un’occhiata alla possibilità di caricare librerie scritte in altri linguaggi. Questa è una caratteristica importante di Lua, implementata a basso livello in modo da renderla indipendente dal sistema operativo (più o meno).
La chiamata dovrebbe essere questa qui:
http://www.lua.org/manual/5.1/manual.html#pdf-package.loadlibCi sono diverse librerie in giro. Io comincerei a vedere se si può integrare nel codice Lua la GSL: http://www.gnu.org/software/gsl/
Bé… se vogliamo approfondire questo aspetto allora c’è anche il binding tra Lua e OpenGL, cioé LuaGL e tutto il 3D(soprattutto il rendering) potrebe essere fatto fare a lui.
Purtroppo su questo aspetto della programmazione(binding, librerie etc etc) sono un completo ignorante.
Basti pensare che ho installato LuaForWindows ed alla linea CLUAINPUT del file texmf.cnf di LuaTeX ho messo il percorso della cartella dove ci sono tutti i bindings con le librerie C. Alcune funzionano ed altre no ed il motivo per me è completamente ignoto.
Per quanto riguarda il progettino che sto facendo, il codice originale di Sketch non si appoggia su nessuna libreria C per fare operazioni vettoriali(basti guardare il file geometry.c dove sono definite le funzioni dot, cross etc…), probabilmente per essere indipendente da qualsiasi libreria ed io ho seguito la stessa scelta.
Comunque sono aperto a qualsiasi consiglio, istruzione.
Fatemi sapere.
Saluti
Michele
-
18 Luglio 2011 alle 6:31 #60244::
Prima di reinventare la ruota io darei un’occhiata alla possibilità di caricare librerie scritte in altri linguaggi. Questa è una caratteristica importante di Lua, implementata a basso livello in modo da renderla indipendente dal sistema operativo (più o meno).
La chiamata dovrebbe essere questa qui:
http://www.lua.org/manual/5.1/manual.html#pdf-package.loadlibCi sono diverse librerie in giro. Io comincerei a vedere se si può integrare nel codice Lua la GSL: http://www.gnu.org/software/gsl/
Bé… se vogliamo approfondire questo aspetto allora c’è anche il binding tra Lua e OpenGL, cioé LuaGL e tutto il 3D(soprattutto il rendering) potrebe essere fatto fare a lui.
Purtroppo su questo aspetto della programmazione(binding, librerie etc etc) sono un completo ignorante.
Basti pensare che ho installato LuaForWindows ed alla linea CLUAINPUT del file texmf.cnf di LuaTeX ho messo il percorso della cartella dove ci sono tutti i bindings con le librerie C. Alcune funzionano ed altre no ed il motivo per me è completamente ignoto.
Per quanto riguarda il progettino che sto facendo, il codice originale di Sketch non si appoggia su nessuna libreria C per fare operazioni vettoriali(basti guardare il file geometry.c dove sono definite le funzioni dot, cross etc…), probabilmente per essere indipendente da qualsiasi libreria ed io ho seguito la stessa scelta.
Comunque sono aperto a qualsiasi consiglio, istruzione.
Fatemi sapere.
Saluti
Michele
Sul manuale di Lua dovrebbe essere spiegato chiaramente come lavorare con librerie C. Si potrebbe aprire un apposito post in merito.
Tenete conto che le procedure di installazione di librerie ecc possono essere affatto semplici: vi ricordate di luatex lunatic di Luigi, in cui si predisponeva LuaTeX per l’uso con Python e quindi per l’accesso ad innumerevoli librerie?
Ciao
-
2 Settembre 2011 alle 20:35 #60245::
Ciao a tutti,in questi giorni sto scrivendo la tesi e per l’occasione sto usando il codice Lua da me scritto per fare dei disegni 3D. Ecco i risultati

Purtroppo prima di incominciare a scrivere non sono riuscito a scrivere la parte d codice che riguarda il rendering, quindi quando creo la scena praticamente fornisco la lista degli oggetti da stampare nell’ordine giusto.
Rispetto alla volta precedente ho creato delle funzioni in più come la forma del toroide,e la funzione special, analoga a quella di Sketch.
Una volta che si conosce come funziona il tutto, si può ottenere dei risultati veramente ottimi.
Comunque, quando finalmente avrò fatto la difesa della tesi, se qualcuno si vuole unire a questo progetto, ne sarei molto contento. Potrebbe nascere qualcosa di molto interessante.
Saluti
Michele
-
3 Settembre 2011 alle 4:51 #60246
-
3 Settembre 2011 alle 17:39 #60247::
ansys” post=62136Ad essere belli, sono belli; ma se non si vede il codice servono a poco 🙂 .
Ciao
OrlandoBé…. se volete vedere il codice, ecco quello della seconda figura:
`
% !TEX encoding = UTF-8
% !TEX program = LuaLaTeX
% !TEX spellcheck = en_GB
\documentclass{report}%standalone}\usepackage[%showframe,
a4paper,
margin = 1cm]{geometry}\usepackage{tikz}
\usetikzlibrary{arrows}\input{ProveSingoleFunzioni_Fun.tex}
\directlua{
require “math”
dofile(“Lua/BasicFunctions.lua”)
dofile(“Lua/CreateObjects.lua”)
dofile(“Lua/3Dfunctions.lua”)
dofile(“Lua/PrintTikZfunctions.lua”)
}\begin{document}
\centering
\begin{tikzpicture}[line join=round,thick,>=angle 45]
\colorlet{plume}{brown}
\directlua{
eye = {5,-5,5.5}
look_at = {0,0,0}
theta = 0%%%%%%%%%%%%%%%%%%%%
% REFERENCES AXIS %
%%%%%%%%%%%%%%%%%%%%
refAxisLength = 3
O = {0,0,0}
refX = {refAxisLength,0,0}
refY = {0,refAxisLength,0}
refZ = {0,0,refAxisLength}
refAxis = Group(PointsCurve({O,refX},”->”),
PointsCurve({O,refY},”->”),
PointsCurve({O,refZ},”->”),
Node(refX,”left”,”$x$”),
Node(refY,”right”,”$y$”),
Node(refZ,”above”,”$z$”))%%%%%%%%%
% TORUS %
%%%%%%%%%
R = 3.2
rr = 1
rz = 3
CenterPoint = {0,0,0}
nU = 100
nV = 10
torus = Torus(R,rr,rz,CenterPoint,nU,nV,”fill=plume,fill opacity=.2″,”half”)%%%%%%%%%%%%%%%%%%%%%
% CROSSING I xR-rr %
%%%%%%%%%%%%%%%%%%%%%%
xII = R+.5
PIIin = {xII, math.sqrt((R+A)^2-xII^2),z}
PIIout = {xII,-math.sqrt((R+A)^2-xII^2),z}InnerLeftLaser = PointsCurve({PIIin,PIIout},”red,dashed”)
%%%%%%%%%%%%%%%%%%%%%%%
% INNER CIRCUMFERENCE %
%%%%%%%%%%%%%%%%%%%%%%%
alphaIN = 102.5
alphaINdashed = 360-alphaINInnerCircumference = Arc(R-rr,O,alphaIN,alphaIN,””)
InnerCircumference = rotate(InnerCircumference,O,{0,0,1},135-alphaIN/2)InnerCircumferenceDashed = Arc(R-rr,O,alphaINdashed,alphaINdashed,”dashed”)
InnerCircumferenceDashed = rotate(InnerCircumferenceDashed,O,{0,0,1},135-alphaINdashed/2-180)%%%%%%%%%%%%%%%%%%%%%%%
% OUTER CIRCUMFERENCE %
%%%%%%%%%%%%%%%%%%%%%%%
alphaOUT = 180
alphaOUTdashed = 360-alphaOUTOuterCircumference = Arc(R+rr,O,alphaOUT,alphaOUT,””)
OuterCircumference = rotate(OuterCircumference,O,{0,0,1},-135)OuterCircumferenceDashed = Arc(R+rr,O,alphaOUTdashed,alphaOUTdashed,”dashed”)
OuterCircumferenceDashed = rotate(OuterCircumferenceDashed,O,{0,0,1},45)%%%%%%%%%%%%%%%%
% RISING PHASE %
%%%%%%%%%%%%%%%%
RisingPhase = Polygon(“fill=green!60!black,fill opacity=.5″,{R-rr,0,0},{R,0,rz},{R-rr,0,rz})%%%%%%%%%%
% LASERS %
%%%%%%%%%%
yL = -6%-> Central Laser
PIL1 = {xI,yL,z}
PIL2 = {0,0,z}
PIL3 = {xI,-yL,z}
OuterCentralLaser1 = PointsCurve({PIL1,PIin2},”red,overlay”)
OuterCentralLaser2 = PointsCurve({PIout2,PIL2},”red,overlay”)
OuterCentralLaser3 = PointsCurve({PIL2,PIin1},”red,overlay”)
OuterCentralLaser4 = PointsCurve({PIout1,PIL3},”red,overlay”)%-> Outer Laser
PIIL = {xII,yL,z}
PIIL2 = {xII,-yL,z}
OuterLeftLaser1 = PointsCurve({PIIL,PIIout},”red,overlay”)
OuterLeftLaser2 = PointsCurve({PIIin,PIIL2},”red,overlay”)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% PARTICLES TRAJECTORIES RIGHT %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
TrajectoriesLeft = Group()n = 50
for i=1,4 do
RadiusX = (1-(i-1)/4)*rr
RadiusZ = (1-(i-1)/4)*rz
Radius = R-rr+RadiusX
Xformula = Radius..”+”..RadiusX..”*math.cos(v)”
Zformula = RadiusZ..”*math.sin(v)”TrajectoriesLeft = ParametricCurve(“v”,Xformula,
“0”,
Zformula,
0,
math.pi,
n,
“<-") end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % PARTICLES TRAJECTORIES CENTER % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TrajectoriesRight1 = Group() TrajectoriesRight2 = Group() n = 50 for i=1,4 do RadiusX = (1-(i-1)/4)*rr RadiusZ = (1-(i-1)/4)*rz Radius = R-rr+RadiusX Yformula1 = Radius.."+"..RadiusX.."*math.cos(v)" Yformula2 = "-"..Radius.."+"..RadiusX.."*math.cos(v)" Zformula = RadiusZ.."*math.sin(v)" TrajectoriesRight1[i] = ParametricCurve("v","0", Yformula1, Zformula, 0, math.pi, n, "<-") TrajectoriesRight2[i] = ParametricCurve("v","0", Yformula2, Zformula, 0, math.pi, n, "->“)end
%%%%%%%%%%%%%%%
% NOZZLE AXIS %
%%%%%%%%%%%%%%%
H = rz+3
hp = .6
nA1 = {0,0,H}
nA2 = {0,0,hp}
nozzleAxis1 = PointsCurve({O,nA2},”loosely dashed”)
nozzleAxis2 = PointsCurve({nA2,nA1},”loosely dashed”)%%%%%%%%%%
% LABELS %
%%%%%%%%%%
Lcl = Node(PIL3,”red,above,overlay”,”Center laser position”)
Lll = Node(PIIL2,”red,above,overlay”,”Left laser position”)dl = Special(“\string\\draw[latex-latex] (VAR1)–(VAR2)node[sloped,midway,fill=white]{$d_l$};”,PIL1,PIIL)
CP1 = Special(“\string\\fill[red] (VAR1)circle[radius=.071]”..
“node[anchor=south east]{1};”,PIin2)
CP2 = Special(“\string\\fill[red] (VAR1)circle[radius=.071]”..
“node[anchor=north west]{2};”,PIout2)
CP3 = Special(“\string\\fill[red] (VAR1)circle[radius=.071]”..
“node[anchor=east]{3};”,PIin1)
CP4 = Special(“\string\\fill[red] (VAR1)circle[radius=.071]”..
“node[anchor=north west]{4};”,PIout1)LP1 = Special(“\string\\fill[red] (VAR1)circle[radius=.071]”..
“node[anchor=north west]{1};”,PIIout)
LP2 = Special(“\string\\fill[red] (VAR1)circle[radius=.071]”..
“node[anchor=north west]{2};”,PIIin)Lrp = Special(“\string\\draw[line width=.4cm,green!60!black,opacity=.5,overlay] (VAR1)–++(.4,0)node[black,opacity=1,anchor=west,inner xsep=1pt,line width=.5pt]{= Rising phase};”,{R+1,R+.5,rz/2})
Lna = Node(nA1,”above”,”Nozzle axis”)
Labels = Group(Lcl,Lll,dl,CP1,CP2,CP3,CP4,LP1,LP2,Lrp,Lna)
%%%%%%%%%
% SCENA %
%%%%%%%%%
scena = CreateScene(“nozzleAxis1”,
“OuterCentralLaser2”,
“OuterLeftLaser2”,
“OuterCentralLaser4”,
“InnerCentralLaser1”,
“InnerCentralLaser2”,
“InnerLeftLaser”,
“InnerCircumference”,
“InnerCircumferenceDashed”,
“OuterCircumference”,
“OuterCircumferenceDashed”,
“torus”,
“OuterCentralLaser1”,
“OuterLeftLaser1”,
“OuterCentralLaser3”,
“TrajectoriesLeft”,
“TrajectoriesRight1”,
“TrajectoriesRight2”,
“RisingPhase”,
“nozzleAxis2”,
“Labels”
% ,”refAxis”)
PrintTikZ(eye,look_at,theta,scena)
}
\end{tikzpicture}
\end{document}
`Con le figure che ho postato speravo di incuriosire qualcuno….
Quando riuscirò a mettere il render al tutto, ovviamente il codice si accorcerebbe un bel po’
Saluti
Michele
-
4 Settembre 2011 alle 4:56 #60248
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.


