mirror of
https://github.com/lucaspalomodevelop/meshlab.git
synced 2026-03-13 08:09:39 +00:00
195 lines
8.7 KiB
HTML
195 lines
8.7 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html>
|
|
<head>
|
|
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
|
|
<title>Meshlab Development</title>
|
|
<meta name="author" content="Paolo Cignoni">
|
|
<meta name="keywords" content="mesh 3d processing meshlab scanning">
|
|
<meta name="description" content="Course Web page">
|
|
<meta name="robots" content="all">
|
|
<link media="all" rel="stylesheet" href="style.css" type="text/css">
|
|
</head>
|
|
<body>
|
|
<div id="leftcontent">
|
|
<h1>MeshLab:
|
|
Development page</h1>
|
|
<p class="body"> This page is devoted to some internal
|
|
development notes. Given the
|
|
linguistic coherency among developers they will be only in
|
|
italian. Sorry.
|
|
</p>
|
|
<h2>CVS
|
|
</h2>
|
|
<p class="body"> Al solito mi raccomando di seguire tutte
|
|
le solite pratiche del bravo programmatore: <br>
|
|
</p>
|
|
<ul>
|
|
<li>Fate update ogni volta che vi mettete a lavorare, non solo
|
|
del repository di MeshLab, ma anche di quello di VCG</li>
|
|
<li>Fate edit delle cose che iniziate a cambiare,</li>
|
|
<li>Prima di fare edit controllate che non l'abbia in edit
|
|
qualcun altro,</li>
|
|
<li>Non lasciate in edit le cose per troppo tempo,</li>
|
|
<li>Non committate mai cose che non compilano o che non fanno
|
|
funzionare le cose degli altri,</li>
|
|
<li>Committate spesso (compatibilmente con quanto di cui sopra).</li>
|
|
<li>Commentate <span style="font-weight: bold; font-style: italic;">SEMPRE
|
|
</span>ogni
|
|
vostro commit (in inglese please) </li>
|
|
</ul>
|
|
<h2>Web</h2>
|
|
<p class="body"> Le paginette web di sourceforge sono
|
|
tenute anche loro in cvs. <br>
|
|
Quindi se fate modifiche fatele sul vostro file system, committatele e
|
|
poi a mano fate update tramite ftp.<br>
|
|
(in alternativa qualcuno che ha voglia potrebbe settare un task cron
|
|
sulla shell di sf che aggiorni la copia in public_html direttamente via
|
|
cvs update una volta al giorno). Il comando da dare su shell.sf.net una
|
|
volta dentro la dir meshlab/htdocs e'</p>
|
|
<p style="font-family: monospace;" class="body"> cvs -d
|
|
:pserver:anonymous@cvs1:/cvsroot/meshlab update</p>
|
|
<h2>Mailing List</h2>
|
|
<p>C'e' una mailing list su sourceforge cui siete pregati di iscrivervi
|
|
tutti:
|
|
</p>
|
|
<p><a class="moz-txt-link-freetext"
|
|
href="http://lists.sourceforge.net/lists/listinfo/meshlab-devel">http://lists.sourceforge.net/lists/listinfo/meshlab-devel</a></p>
|
|
<p>La lista la useremo per tutte le comunicazioni semi-urgenti (e.g.
|
|
quelle che uno si aspetta vengano recepite entro un giorno) che
|
|
riguardano soprattutto lo sviluppo di MeshLab. Ad esempio per essere
|
|
sicuri che tutti sappiano cosa succede nel caso di cambi significativi
|
|
di interfacce comuni...
|
|
</p>
|
|
<h3>Note di Compilazione</h3>
|
|
<p class="body">Si assume che </p>
|
|
<ol>
|
|
<li>QT 4.0 sia installato</li>
|
|
<li>il modulo cvs meshlab e quello di vcg siano allo stesso
|
|
livello e
|
|
che il modulo che contiene la <i>vcg lib</i> sia in una
|
|
dir chiamata sf. (ad
|
|
es. dovreste avere qualcosa tipo \doc\sf\vcg\space\point3.h e
|
|
\doc\meshlab\src\meshlab\meshlab.pro )</li>
|
|
</ol>
|
|
<p class="body">
|
|
La libreria VCG, pagina ufficiale <a href="http://vcg.sourceforge.net">vcg.sf.net</a>, e'
|
|
scaricabile in cvs
|
|
anonimo
|
|
</p>
|
|
<div style="text-align: center;"> :ext:anonymous@cvs.sourceforge.net:/cvsroot/vcg<br>
|
|
</div>
|
|
<p class="body"> Gli esempi di base della libreria li
|
|
trovate sotto sf/apps/sample.
|
|
Lasciate perdere la roba sotto test.</p>
|
|
<p class="body"><a href="style.html">Guida di stile</a>.
|
|
</p>
|
|
<h2>Task</h2>
|
|
<p class="body"> I vari task che vi sono assegnati sono registrati come
|
|
task dei
|
|
rispettivi <a href="https://sourceforge.net/pm/?group_id=149444">sottoprogetti</a>
|
|
che fanno parte di MeshLab </p>
|
|
<h3><a href="./filter.html">Gruppo
|
|
Filtering</a></h3>
|
|
<span style="font-style: italic;">Latronico, Venturi </span>
|
|
<ol>
|
|
<li><a style="font-weight: bold;"
|
|
href="https://sourceforge.net/pm/task.php?func=detailtask&project_task_id=120436&group_id=149444&group_project_id=44906">LOOP</a>
|
|
Implementare la tecnica di subdivision surface di Loop.</li>
|
|
<li><span style="color: rgb(204, 0, 0); font-weight: bold;">DECIMATOR
|
|
</span><span style="color: rgb(0, 0, 0);">Implementare con
|
|
algoritmo di cluster.</span></li>
|
|
<li><span style="color: rgb(0, 0, 0);"></span><span
|
|
style="font-weight: bold; color: rgb(204, 0, 0);">REMOVER</span>
|
|
Implementare la rimozione i triangoli che hanno almeno un lato piu'
|
|
lungo di una soglia</li>
|
|
<li><span style="font-weight: bold; color: rgb(204, 0, 0);">APPLY
|
|
TRASFORM</span> Applicare le trasformazioni
|
|
Scala, Rotazione, Traslazione </li>
|
|
<li><span style="font-weight: bold; color: rgb(204, 0, 0);">COLOR NON
|
|
MANIFOLD</span> Colorare i vertici che non sono 2-manifold<br
|
|
style="color: rgb(0, 0, 0);">
|
|
<br style="color: rgb(0, 0, 0);">
|
|
</li>
|
|
</ol>
|
|
<h3><a
|
|
href="https://sourceforge.net/pm/task.php?group_project_id=44908&group_id=149444&func=browse">Gruppo
|
|
Interface Framework</a></h3>
|
|
<span style="font-style: italic;">Mochi, Vacca, Portelli<br>
|
|
</span>
|
|
<ol>
|
|
<li><a
|
|
href="https://sourceforge.net/pm/task.php?func=detailtask&project_task_id=120441&group_id=149444&group_project_id=44908">Release</a>:
|
|
Iniziate a prendere confidenza con il meccanismo di release di SF e
|
|
fate la prima rel dei binari e dei src di MeshLab. Aggiungete una dir
|
|
"docs" dove mettete i readme che accompagnano la release. Suggerisco di
|
|
scegliere subito un naming preciso per le release (e per i file che
|
|
compongono la release) copiate da altri progetti (ad es <span
|
|
style="font-style: italic;">metro</span> di vcg) e
|
|
scrivete le vostre scelte da qualche parte. Procuratevi anche un
|
|
ambiente linux e compilate anche anche per qualche distrib. Fate un
|
|
solo package (chiamato MeshLab) e tre file al suo interno (binari win
|
|
linux e src).</li>
|
|
<li><span style="font-weight: bold;">Logging e toolbar</span>,
|
|
Adattate la classe LogStream.h alle nostre necessita', inizialmente
|
|
fate solo che mostra il dump delle varie scritte (ad es. usate la
|
|
classe callback nella lettura ply) e modificate la classe di
|
|
interfaccia dei filtri in modo da fornire un modo per fare output.
|
|
Aggiungete anche una toolbar di rendering option stile quella di
|
|
Easy3dView (per ottenere i vari modi basta cambiare i parametri
|
|
della chiamata alla glw.draw() nella Render) ritagliate pure le icone
|
|
da meshlab/images/easyIcons.png (o fatene di migliori se ne avete
|
|
voglia) </li>
|
|
</ol>
|
|
<h3><a
|
|
href="https://sourceforge.net/pm/task.php?group_project_id=44907&group_id=149444&func=browse">Gruppo
|
|
Rendering</a> </h3>
|
|
<span style="font-style: italic;">Vannini, Gangemi, Pirro<br>
|
|
</span>
|
|
<ol>
|
|
<li><a
|
|
href="https://sourceforge.net/pm/task.php?func=detailtask&project_task_id=120438&group_id=149444&group_project_id=44907">CURVATURE</a>
|
|
Implementare il calcolo delle curvature principali gaussiane e media
|
|
per una mesh. Inizialmente fate una dir <span
|
|
style="font-style: italic;">meshlab/src/test/curvature</span> e fate
|
|
esperimenti li' dentro prendendo spunto come stile dagli esempi che
|
|
trovate sotto sf/apps/sample. Inizialmente partite aggiungendo ad un
|
|
vostro tipo vertice un membro di tipo curvature con tutto quello che vi
|
|
serve. Poi se tutto funge come si deve lo si aggiunge come componente.</li>
|
|
</ol>
|
|
<h3><a
|
|
href="https://sourceforge.net/pm/task.php?group_project_id=44909&group_id=149444&func=browse">Gruppo
|
|
Selection and IO</a></h3>
|
|
<span style="font-style: italic;">Buzzelli, Mazzanti</span>
|
|
<ol>
|
|
<li><a
|
|
href="https://sourceforge.net/pm/task.php?func=detailtask&project_task_id=120762&group_id=149444&group_project_id=44909">Obj
|
|
file format</a> input Aggiungere il supporto del formato obj, come
|
|
documentazione del formato 3d partite da:<br>
|
|
<a href="http://www.csit.fsu.edu/%7Eburkardt/data/obj/obj.html">http://www.csit.fsu.edu/~burkardt/data/obj/obj.html</a><br>
|
|
<a href="http://www.dcs.ed.ac.uk/home/mxr/gfx/3d/OBJ.spec">http://www.dcs.ed.ac.uk/home/mxr/gfx/3d/OBJ.spec</a><br>
|
|
Raccogliete anche un po di modelli 3d obj liberi che esemplifichino i
|
|
vari tipi di attributi che possono comparire nei modelli. </li>
|
|
</ol>
|
|
<span style="font-style: italic;"><br>
|
|
</span>
|
|
<dl>
|
|
</dl>
|
|
</div>
|
|
<div id="rightcontent">
|
|
<a href="https://sourceforge.net/projects/meshlab/"><img
|
|
style="border: 0px solid ; width: 125px; height: 37px;"
|
|
src="http://sourceforge.net/sflogo.php?group_id=149444&type=2"
|
|
alt="SourceForge.net Logo"></a>
|
|
<p class="menu"><a href="http://meshlab.sourceforge.net">Main
|
|
Page </a></p>
|
|
<p class="menu"><a
|
|
href="https://sourceforge.net/project/showfiles.php?group_id=149444">Download</a></p>
|
|
<p class="menu"><a href="http://cvs.sourceforge.net/viewcvs.py/meshlab/">CVS</a></p>
|
|
<p class="menu"><a href="https://sourceforge.net/pm/?group_id=149444">TASK</a></p>
|
|
<p class="menu"><a href="https://sourceforge.net/projects/meshlab/">SF
|
|
project
|
|
page</a></p>
|
|
</div>
|
|
</body>
|
|
</html>
|