~ubuntu-branches/ubuntu/vivid/meshlab/vivid

« back to all changes in this revision

Viewing changes to vcglib/vcg/space/index/grid_static_ptr.h

  • Committer: Bazaar Package Importer
  • Author(s): Teemu Ikonen
  • Date: 2011-03-28 17:54:11 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20110328175411-ntj9e50d1yl0luzb
Tags: 1.3.0a+dfsg1-1
* New upstream version (closes: #618522)
* Repackage the upstream sources to get rid of some files with questionable
  licensing information and useless libraries, see the copyright file for
  details.
* Builds with GCC-4.5 (closes: #565034)
* Fix watch-file to work with new upstream names and dfsg source
  (closes: #582477)
* Require debhelper version 8 or above.
* control:
  - Update standards-version to 3.9.1, cleanup.
  - Remove build-dep to libgl-dev to fix a lintian warning about a
    build-dep to a virtual package.
  - Remove build-dep to asciidoc, add build-dep to libeigen2-dev.
* rules:
  - Remove manpage-related code.
  - Build the necessary code from meshlab/src/external. Also clean it.
  - Override dh_shlibdeps to include /usr/lib/meshlab in search path.
  - Don't install shader licenses.
* install: Install binaries from meshlab/src/distrib.
* copyright: Update to the latest DEP5 format, document changes due to
  source repackaging and add the copyright info for the files added in
  this upstream release.
* Hardcode shadersDir and pluginDir in upstream source to locations
  in the Debian binary package.
* Use source format '3.0 (quilt)'.
* Split changes affecting upstream code to branches in the git repository
  at git.d.o. Add DEP3 patch metadata headers to debian/metapatches and
  generate patches from git branches with gdp (http://gitorious.org/gdp).
  Current patches:
  - 01_muparser: Use Debian muparser.
  - 02_qhull: Use Debian qhull.
  - 03_lib3ds: Use Debian lib3ds.
  - 04_libbz2: Use Debian libbz2.
  - 05_glew: Use Debian GLEW.
  - 06_eigen: Use Debian Eigen.
  - 07_disable-updates: Disable checking for updates on startup.
  - 08_externals: Only build necessary external sources.
  - 09_rpath: Use /usr/lib/meshlab as RPATH in binaries.
  - 10_shadersdir: Hardcode shadersDir to the correct path in Debian
  - 11_pluginsdir: Hardcode pluginsDir to the correct path in Debian
* Add a README.source file documenting the patch generation.

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
* for more details.                                                         *
21
21
*                                                                           *
22
22
****************************************************************************/
23
 
/****************************************************************************
24
 
History
25
 
 
26
 
$Log: not supported by cvs2svn $
27
 
Revision 1.37  2007/07/16 15:13:39  cignoni
28
 
Splitted initialiazation functions of grid to add flexibility in the creation
29
 
 
30
 
Revision 1.36  2005/12/02 00:43:31  cignoni
31
 
Forgotten a base deferencing like the previous one
32
 
Note also the different possible sintax with this-> instead of the base class name
33
 
 
34
 
Revision 1.35  2005/12/02 00:25:13  cignoni
35
 
Added and removed typenames for gcc compiling.
36
 
Added base class qualifier for referencing the elemntes of the templated base class (BasicGrid)
37
 
it seems to be needed by the standard
38
 
 
39
 
Revision 1.34  2005/11/30 16:01:25  m_di_benedetto
40
 
Added std:: namespace for max() and min().
41
 
 
42
 
Revision 1.33  2005/11/30 10:32:44  m_di_benedetto
43
 
Added (int) cast to std::distance to prevent compiler warning message.
44
 
 
45
 
Revision 1.32  2005/11/10 15:44:17  cignoni
46
 
Added casts to remove warnings
47
 
 
48
 
Revision 1.31  2005/10/07 13:27:22  turini
49
 
Minor changes in Set method: added use of template scalar type computing BBox.
50
 
 
51
 
Revision 1.30  2005/10/05 17:05:08  pietroni
52
 
corrected bug on Set Function .... bbox must be exetended in order to have'nt any object on his borde
53
 
 
54
 
Revision 1.29  2005/10/03 13:57:56  pietroni
55
 
added GetInSphere and GetInBox functions
56
 
 
57
 
Revision 1.28  2005/10/02 23:15:26  cignoni
58
 
Inveted the boolean sign of an assert in Grid()
59
 
 
60
 
Revision 1.27  2005/09/30 15:07:28  cignoni
61
 
Reordered grid access functions
62
 
Added possibility of setting BBox explicitly in Set(...)
63
 
 
64
 
Revision 1.26  2005/09/30 13:15:21  pietroni
65
 
added wrapping to functions defined in GridClosest:
66
 
- GetClosest
67
 
- GetKClosest
68
 
- DoRay
69
 
 
70
 
Revision 1.25  2005/09/21 09:22:51  pietroni
71
 
removed closest functions. Closest function is now on index\\Closest.h
72
 
Users must use trimesh\\closest.h to perform spatial query.
73
 
 
74
 
Revision 1.24  2005/09/16 11:57:15  cignoni
75
 
Removed two wrong typenames
76
 
 
77
 
Revision 1.23  2005/09/15 13:16:42  spinelli
78
 
fixed bugs
79
 
 
80
 
Revision 1.22  2005/09/15 11:14:39  pietroni
81
 
minor changes
82
 
 
83
 
Revision 1.21  2005/09/14 13:27:38  spinelli
84
 
minor changes
85
 
 
86
 
Revision 1.20  2005/09/14 12:57:52  pietroni
87
 
canged template parameters for Closest Function (use of TempMark class)
88
 
 
89
 
Revision 1.19  2005/09/14 09:05:32  pietroni
90
 
added * operator to Link
91
 
modified getClosest in order to use Temporary mark
92
 
corrected bug on functor calling compilation
93
 
 
94
 
Revision 1.18  2005/09/09 11:29:21  m_di_benedetto
95
 
Modified old GetClosest() to respect old min_dist semantic (in/out) and removed #included <limits>
96
 
 
97
 
Revision 1.17  2005/09/09 11:11:15  m_di_benedetto
98
 
#included <limits> for std::numeric_limits<ScalarType>::max() and corrected parameters bug in old GetClosest();
99
 
 
100
 
Revision 1.16  2005/09/09 11:01:02  m_di_benedetto
101
 
Modified GetClosest(): now it uses a functor for distance calculation.
102
 
Added comments and a GetClosest() method with backward compatibility.
103
 
 
104
 
Revision 1.15  2005/08/26 09:27:58  cignoni
105
 
Added a templated version of SetBBox
106
 
 
107
 
Revision 1.14  2005/08/02 11:18:36  pietroni
108
 
exetended form BasicGrid, changed type of t in class Link (from Iterator to Pointer to the object)
109
 
 
110
 
Revision 1.13  2005/04/14 17:23:08  ponchio
111
 
*** empty log message ***
112
 
 
113
 
Revision 1.12  2005/03/15 11:43:18  cignoni
114
 
Removed BestDim function from the grid_static_ptr class and moved to a indipendent file (grid_util.h) for sake of generality.
115
 
 
116
 
Revision 1.11  2005/01/03 11:21:26  cignoni
117
 
Added some casts
118
 
 
119
 
Revision 1.10  2004/09/28 10:25:05  ponchio
120
 
SetBox minimal change.
121
 
 
122
 
Revision 1.9  2004/09/23 14:29:42  ponchio
123
 
Small bugs fixed.
124
 
 
125
 
Revision 1.8  2004/09/23 13:44:25  ponchio
126
 
Removed SetSafeBBox. SetBBox is now safe enough.
127
 
 
128
 
Revision 1.7  2004/09/09 12:44:39  fasano
129
 
included stdio.h
130
 
 
131
 
Revision 1.6  2004/09/09 08:39:29  ganovelli
132
 
minor changes for gcc
133
 
 
134
 
Revision 1.5  2004/06/25 18:34:23  ganovelli
135
 
added Grid to return all the cells sharing a specified edge
136
 
 
137
 
Revision 1.4  2004/06/23 15:49:03  ponchio
138
 
Added some help and inndentation
139
 
 
140
 
Revision 1.3  2004/05/12 18:50:58  ganovelli
141
 
changed calls to Dist
142
 
 
143
 
Revision 1.2  2004/05/11 14:33:46  ganovelli
144
 
changed to grid_static_obj to grid_static_ptr
145
 
 
146
 
Revision 1.1  2004/05/10 14:44:13  ganovelli
147
 
created
148
 
 
149
 
Revision 1.1  2004/03/08 09:21:31  cignoni
150
 
Initial commit
151
 
 
152
 
****************************************************************************/
153
23
 
154
24
#ifndef __VCGLIB_UGRID
155
25
#define __VCGLIB_UGRID
262
132
 
263
133
 
264
134
 
 
135
    bool Empty() const {return links.empty();}
265
136
 
266
137
                /// Date le coordinate di un grid point (corner minx,miy,minz) ritorna le celle che condividono
267
138
                /// l'edge cell che parte dal grid point in direzione axis
456
327
                        this->voxel[1] = this->dim[1]/this->siz[1];
457
328
                        this->voxel[2] = this->dim[2]/this->siz[2];                     
458
329
                        
459
 
                                // "Alloca" la griglia: +1 per la sentinella
 
330
        // Allocate the grid (add one more for the final sentinel)
460
331
                                grid.resize( this->siz[0]*this->siz[1]*this->siz[2]+1 );
461
332
 
462
 
                                // Ciclo inserimento dei tetraedri: creazione link
 
333
        // Insert all the objects into the grid
463
334
                                links.clear();
464
335
                                for(i=_oBegin; i!=_oEnd; ++i)
465
336
                                {