Commit Graph

42 Commits

Author SHA1 Message Date
Paolo Cignoni 448c340d3a removed useless selection count call in append 2021-10-28 21:21:15 +02:00
alemuntoni 094918662b fix append texcoords 2021-07-05 13:02:13 +02:00
Luigi Malomo b2727b1394 warnings fixed 2021-06-25 19:29:46 +02:00
alemuntoni 7006311807 fix append when mesh has texcoords but not textures 2021-06-03 11:07:15 +02:00
alemuntoni c150c3f6b6 fix append and SplitManifoldComponents when wedge text coords are enabled 2021-05-17 17:36:32 +02:00
Luigi Malomo 895f8b0d03 fixed bug in const copy of mesh attributes 2021-03-29 17:29:44 +02:00
alemuntoni 8408a1a1d1 all complex.h files are self-sufficient 2021-03-24 17:47:49 +01:00
alemuntoni 09b12339c0 using ForEach. add const ForEach and ForEachHEdge 2020-09-10 17:01:05 +02:00
alemuntoni dc5b0649ee using range for in MeshAppendConst 2020-09-10 17:01:05 +02:00
alemuntoni 98ff47110d const correctness for make a copy from a const right Mesh 2020-09-10 17:01:05 +02:00
T.Alderighi a78a51e650 handling non trivially copyable types in the attribute copy when appending meshes.
https://en.cppreference.com/w/cpp/types/is_trivially_copyable
2020-02-20 20:31:47 +01:00
Luigi Malomo d3b9aa83c1 added missing copy of the VF adjacency info contained inside the faces 2020-02-12 18:18:15 +01:00
Luigi Malomo 15ea014cf9 fixed comment on Append::Mesh 2020-02-07 15:18:50 +01:00
T.Alderighi 67a80722d5 removed tetra complex...bootstrapping tetra in trimesh:
base done
foreach done
Allocator done
Append done

quality selection topology WIP
clean todo
2018-05-04 18:12:02 +02:00
T.Alderighi b662f747a0 bootstrapping tetra as trimesh component 2018-05-04 12:08:32 +02:00
Marco Callieri ffd8d320e2 corrected bug in appending models with textures
fl.ImportData(*fi)  should happen BEFORE doing the textureOffset
correction
2017-04-21 15:17:00 +02:00
Paolo Cignoni 32333eba24 Huge copyright sanitization of the header files of vcg folder. 2016-06-13 05:29:25 +00:00
Luigi Malomo e5ca4bf8c7 added option to copy adjacency for mesh copy function 2014-09-10 00:50:10 +00:00
granzuglia b5bfb0e438 complex/base.h:
- removed Visual Studio warnings
2014-08-09 10:01:15 +00:00
Paolo Cignoni 88a648822a a forgotten int to size_t conversion in append/remap 2014-07-12 21:08:15 +00:00
Paolo Cignoni d879f84302 Converted the remap structure of the append class to keep indexes as size_t element instead of int 2014-07-12 11:43:01 +00:00
Paolo Cignoni 65336cfe7b Trying to solve int / size_t issues. Added a error guard to avoid inclusion of append. 2014-07-07 10:09:25 +00:00
granzuglia 30a9c6c2fb - a lot of int variables converted into size_t ones
- vectors contained inside Remap class converted from std::vector<int> into std::vector<size_t>
2014-07-07 07:09:07 +00:00
Paolo Cignoni 998312b65e PolygonalMesh Debugging: corrected importFaceAdj bug 2014-02-18 20:17:28 +00:00
Paolo Cignoni 614f49c053 PolygonalMesh Debugging: Added another missing Alloc 2014-02-18 14:12:08 +00:00
Paolo Cignoni 00d326ed76 Improved comments and harmless refactoring 2014-02-18 11:03:01 +00:00
Paolo Cignoni 7747e6097f Corrected a few allocating and copyng functions to manage polygonal meshes instead of simple triangular ones. 2014-02-12 10:59:37 +00:00
Paolo Cignoni 84c80a1972 Include header cleaning and reordering. 2013-11-25 10:01:24 +00:00
ganovelli 4253c2f3b6 corrected bug on appending perFace and perEdge attributes
(thanks to Minghua Nie for pointing it out).
2013-03-11 11:53:26 +00:00
Paolo Cignoni fca284d27c corrected box assignment between different types in append::MeshCopy 2012-11-27 11:52:17 +00:00
Paolo Cignoni 6c3d86d448 Still Improving the documentation. 2012-10-25 23:52:48 +00:00
Paolo Cignoni d59ea952ed Added append to the set of files always included by complex.h 2012-10-25 23:37:25 +00:00
Paolo Cignoni 5aed57a364 Heavy restructuring of the append function. Now it is hopefully must more efficient.
Added a parameter for requesting the copy of the non trivial topology. (e.g. all the adjacency relations beyond FV and EV).
2012-04-04 10:11:46 +00:00
Paolo Cignoni 57e4689e1b corrected bug in the ImportVertexAdj Topology must be copied only if meaningful. 2012-01-18 11:27:07 +00:00
Paolo Cignoni 9af315bb18 Two significant changes
1) the name of the supposedly non changed mesh is done explicit in the template name 
2) If the the selection of the vertexes is not consistent with the face selection the append could build faces referencing non existent vertices so it is mandatory that the selection of the vertices reflects the loose selection from edges and faces (e.g. if a face is selected all its vertices must be selected
2011-12-15 07:52:51 +00:00
Paolo Cignoni 5af75e6dac Removed bug in the ImportEdgeAdj, ImportFaceAdj, ImportHEdgeAdj. All of the same kind...
for(unsigned int vi = 0; vi < 2; ++vi)
 {
   size_t i = Index(mr,er.cEEp(vi));
   el.EEp(i) = (i>ml.edge.size())? 0 : &ml.edge[remap.edge[i]];
   el.EEi(i) = er.cEEi(i);
 }

 el.EEp(i)  should be  el.EEp(vi) !!!!
2011-11-21 09:36:21 +00:00
Marco Di Benedetto ddb4e72887 moved PointerToAttribute outside mesh definition to avoid type mismatches in append with two different mesh types. 2011-06-14 14:52:38 +00:00
Paolo Cignoni 3fc9b9ef1f Added MeshCopy(dst,src), with the same syntax of memcopy 2011-06-03 14:37:50 +00:00
ganovelli 11adfa2aff Changes for supporting copying of PerVertex,PerEdge and PerFace attributes in the vcg::tri::Append (append.h)
- useless template paramtere in SimpleTempData_Base removed (simple_temporary_data.h)
- Attribute is now derived by SimpleTempData_Base
- SimpleTempData_Base defines a void * At(unsigned int i) function that returns a pointer to the i-th element of the vector withouth knowing the type
- removed the useless member _typeid from the PointerToAttribute. It was used to store the rtti, useless itself.

NOTE: the copy of attributes is done with a memcpy! This means that if you defined a operator = in your attribute this WILL NOT be used in the append.
2011-06-01 13:39:31 +00:00
Paolo Cignoni 7324e75142 mismatch between the edge.EVp(i) versus edge.V(i) usage. 2011-05-31 08:46:38 +00:00
ganovelli 1fc83af05c Ongoing Rearrangement of filepath
replaced the path to comply the filepaths modification.
The replacements are as follows:

/complex/trimesh/base.h --> /complex/complex.h
/complex/trimesh/allocate.h --> /complex/allocate.h
/complex/trimesh/append.h --> /complex/append.h
/complex/trimesh/ --> /complex/algorithms/
/complex/local_optimization/ ---> /complex/algorithms/local_optimization/
/complex/local_optimization.h ---> /complex/algorithms/local_optimization.h
/complex/intersection.h ---> /complex/algorithms/intersection.h
/complex/boundary.h ---> /complex/algorithms/boundary.h
2011-04-01 17:06:52 +00:00
ganovelli 562ddb5397 Ongoing Rearrangement of filpath
ACTION 2
2011-04-01 16:20:53 +00:00