Skip to content

Commit

Permalink
Merge branch 'main' into self_pipe
Browse files Browse the repository at this point in the history
  • Loading branch information
azeey authored Aug 19, 2024
2 parents 91f3cb5 + 1f52701 commit 7945e18
Show file tree
Hide file tree
Showing 29 changed files with 6,751 additions and 796 deletions.
1 change: 0 additions & 1 deletion .github/ci/packages.apt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ libavformat-dev
libavutil-dev
libfreeimage-dev
libgdal-dev
libgts-dev
libgz-cmake4-dev
libgz-math8-dev
libgz-utils3-dev
Expand Down
7 changes: 0 additions & 7 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -68,13 +68,6 @@ gz_find_package(FreeImage VERSION 3.9
REQUIRED_BY graphics
PRIVATE_FOR graphics)

#------------------------------------
# Find GNU Triangulation Surface Library
gz_find_package(
GTS PRETTY gts PURPOSE "GNU Triangulation Surface library"
REQUIRED_BY graphics
PRIVATE_FOR graphics)

#------------------------------------
# Find GDAL
gz_find_package(GDAL VERSION 3.0
Expand Down
16 changes: 16 additions & 0 deletions Migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,22 @@ Deprecated code produces compile-time warnings. These warning serve as
notification to users that their code should be upgraded. The next major
release will remove the deprecated code.

## Gazebo Common 5.X to 6.X

### Modifications

1. Removed the `graphics` component's dependency on the GTS
(GNU Triangulated Surface) library which was used for doing triangulation
and CSG Boolean operation by the `MeshManager`. The Delaunay triangulation
function now uses the CDT (Constrained Delaunay Triangulation) library.

### Deletions

1. **MeshManager.hh**
+ `void CreateBoolean(const std::string &_name, const Mesh *_m1,
const Mesh *_m2, const int _operation,
const gz::math::Pose3d &_offset = gz::math::Pose3d::Zero)`

## Gazebo Common 4.X to 5.X

### Deprecations
Expand Down
4 changes: 4 additions & 0 deletions codecov.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
ignore:
- "graphics/src/tiny_obj_loader.h"
- "graphics/src/CDT"
- "graphics/src/VHACD"
- "profiler/src/Remotery/lib"
- "profiler/src/Remotery/vis"
- "src/win_dirent.h"
5 changes: 3 additions & 2 deletions coverage.ignore.in
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
profiler/src/Remotery/*
graphics/src/tiny_obj_loader.h
graphics/src/CDT/*
graphics/src/VHACD/*
profiler/src/Remotery/*
src/win_dirent.h
graphics/src/tinyxml2/*
45 changes: 45 additions & 0 deletions graphics/include/gz/common/DelaunayTriangulation.hh
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
/*
* Copyright (C) 2024 Open Source Robotics Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/

#ifndef GZ_COMMON_DELAUNAYTRIANGULATION_HH_
#define GZ_COMMON_DELAUNAYTRIANGULATION_HH_

#include <vector>

#include <gz/math/Vector2.hh>

#include <gz/common/graphics/Export.hh>


namespace gz::common
{
class SubMesh;

/// \brief Perform delaunay triangulation on input vertices.
/// \param[in] _vertices A list of all vertices
/// \param[in] _edges A list of edges. Each edge is made of 2 vertex
/// indices from _vertices
/// \param[out] _submesh A submesh that will be populated with the
/// resulting triangles.
/// \return True on success.
bool GZ_COMMON_GRAPHICS_VISIBLE DelaunayTriangulation(
const std::vector<gz::math::Vector2d> &_vertices,
const std::vector<gz::math::Vector2i> &_edges,
gz::common::SubMesh *_submesh);

} // namespace gz::common
#endif // GZ_COMMON_DELAUNAYTRIANGULATION_HH_
64 changes: 0 additions & 64 deletions graphics/include/gz/common/GTSMeshUtils.hh

This file was deleted.

70 changes: 0 additions & 70 deletions graphics/include/gz/common/MeshCSG.hh

This file was deleted.

10 changes: 0 additions & 10 deletions graphics/include/gz/common/MeshManager.hh
Original file line number Diff line number Diff line change
Expand Up @@ -270,16 +270,6 @@ namespace gz
/// \param[in] _scale scaling factor for the camera
public: void CreateCamera(const std::string &_name, const float _scale);

/// \brief Create a boolean mesh from two meshes
/// \param[in] _name the name of the new mesh
/// \param[in] _m1 the parent mesh in the boolean operation
/// \param[in] _m2 the child mesh in the boolean operation
/// \param[in] _operation the boolean operation applied to the two meshes
/// \param[in] _offset _m2's pose offset from _m1
public: void CreateBoolean(const std::string &_name, const Mesh *_m1,
const Mesh *_m2, const int _operation,
const gz::math::Pose3d &_offset = gz::math::Pose3d::Zero);

/// \brief Perform convex decomposition on a submesh.
/// The submesh is decomposed into multiple convex submeshes. The output
/// submeshes contain vertices and indices but texture coordinates
Expand Down
Loading

0 comments on commit 7945e18

Please sign in to comment.