Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Conflict Header File - mst_orient_file vs edge_collapse

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Conflict Header File - mst_orient_file vs edge_collapse


Chronological Thread 
  • From: Michael Jeulin-L <>
  • To:
  • Subject: Re: [cgal-discuss] Conflict Header File - mst_orient_file vs edge_collapse
  • Date: Mon, 18 Jan 2010 09:13:30 +0200

Laurent Saboret wrote:
Hi Michael,

Please post your code in order for CGAL developers to reproduce this compilation error.

Best regards,
Laurent Saboret


Michael Jeulin-L wrote:
Hi,

I have a conflict about multiple definition of a function in CGAL when I try to
include "CGAL/mst_orient_normals.h" and "CGAL/Surface_mesh_Simplification/edge_collapse.h"
at the same time.

I`am under VS2K8 pro and I receive the following error :
(It`s a french version, so I try to translate it into English error report)

"
Files : mst_orient_normals.h
error C2668 'boost:visitor' : ambiguous call to an overload function
error C2780: 'void boost::breadth_first_search(const VertexListGraph &,
graph_traits<G>::vertex_descriptor, Buffer &, BFSVisitor, ColorMap)' : 5
arguments wait- 3 provided) "

When I try to compute the function with default parameters, I have exactly
contrary error (3 arguments wait - 5 provided)

I think I can cut some code from edge_collapse header to resolve it, but the
solution is not convenient ^^. So could someone tell me what about this
conflict and how can I resolve it properly please ?

Thank you very much.
Kind Regards.


------------------------------------------------------------------------


Ce courrier électronique et toutes les pièces éventuellement jointes qu’il
contient sont CONFIDENTIELS et destinés exclusivement à l’usage de leur
destinataire. Si une erreur de transmission ou une adresse erronée a mal
dirigée ce courrier, merci d’en informer l’expéditeur en lui faisant une
réponse par courrier électronique dès réception. Si vous n’êtes pas le
destinataire de ce courrier, vous ne devez pas l’utiliser, le conserver, en
faire état, le distribuer, le copier, l’imprimer ou en révéler le contenu à
une tierce partie.
Ce courrier électronique est à usage strictement informatif et ne saurait
engager de quelque manière que ce soit INFOTERRA France SAS, ni ses filiales.

This e-mail and any attachments hereto are CONFIDENTIAL and intended solely
for the use of the addressee. If you have received this e-mail in error
please send it back to the person that sent it to you.
If you have received it in error, please notify the sender by return email.
If you are not the addressee of this email, you must not use, keep,
disseminate, copy, print or otherwise deal with it.
This email is for information only and will not bind INFOTERRA France SAS in
any contract or obligation, nor its subsidiaries.
The following code cause the error :
#include <list>
#include <vector>
#include <fstream>

#include <CGAL/Cartesian.h>
#include <CGAL/Polygon_2.h>
#include <CGAL/property_map.h>
#include <CGAL/remove_outliers.h>
#include <CGAL/pca_estimate_normals.h>
#include <CGAL/mst_orient_normals.h>
#include <CGAL/Triangulation_euclidean_traits_xy_3.h>
#include <CGAL/Triangulation_hierarchy_3.h>
#include <CGAL/Delaunay_triangulation_2.h>
#include <CGAL/Delaunay_triangulation_3.h>
#include <CGAL/alpha_shape_2.h>
#include <CGAL/Alpha_shape_3.h>
#include <CGAL/linear_least_squares_fitting_2.h>
#include <CGAL/linear_least_squares_fitting_3.h>

#include <CGAL/Polyhedron_3.h>
#include <CGAL/Surface_mesh_default_triangulation_3.h>
#include <CGAL/make_surface_mesh.h>
#include <CGAL/Implicit_surface_3.h>
#include <CGAL/Poisson_reconstruction_function.h>
#include <CGAL/Point_with_normal_3.h>
#include <CGAL/compute_average_spacing.h>

#include <CGAL/Surface_mesh_simplification/HalfedgeGraph_Polyhedron_3.h>
*#include <CGAL/Surface_mesh_simplification/edge_collapse.h>*
#include
<CGAL/Surface_mesh_simplification/Policies/Edge_collapse/Count_stop_predicate.h>


#include <CGAL/Exact_predicates_inexact_constructions_kernel.h>
#include <CGAL/Unique_hash_map.h>


using namespace std;

[...typedef....]

++

void PBuilding::EstimateNormals()
{
PointList pointsVect;
unsigned int nb_neighbors=26;

_completion=0 ;
int size=_Buildings.size() ;
global_bar->setMaximum(size);

for(ElementsPts::iterator building=_Buildings.begin(); building!=_Buildings.end(); ++building)
{
global_bar->setValue(_completion++);

for(PointsList::iterator point=building->begin();point!=building->end(); ++point)
pointsVect.push_back(PointVectorPair((*point), Vector(0, 0, 0)));

CGAL::pca_estimate_normals(pointsVect.begin(), pointsVect.end(),
CGAL::First_of_pair_property_map<PointVectorPair>(),
CGAL::Second_of_pair_property_map<PointVectorPair>(),
nb_neighbors);

pointsVect.erase(CGAL::mst_orient_normals(pointsVect.begin(), pointsVect.end(),
CGAL::First_of_pair_property_map<PointVectorPair>(),
CGAL::Second_of_pair_property_map<PointVectorPair>(),
nb_neighbors),
pointsVect.end());

_pointsNormals.push_back(pointsVect);
pointsVect.clear();
}

global_bar->setValue(size);
global_bar->reset();
}

Thank you.
Kind Regards.

--
--------------------------------------------
Michael Jeulin-L, ComputaMaps

Private Bag X20, Constantia 7848, South Africa
tel: +27.21.700 8140, fax: +27.21.701 9520, cell: +27.72.8588181
e-mail:


Manufacturers of digital maps and imagery
http://www.computamaps.com
--------------------------------------------




Archive powered by MHonArc 2.6.16.

Top of Page