Commit Graph

177 Commits

Author SHA1 Message Date
Nithin Pranesh ff23bff509 gcc/clang warning 2021-11-04 17:19:04 -04:00
Nithin Pranesh 1724f91cb0 fix gcc/clang warnings 2021-11-04 15:41:56 -04:00
Kevin Ring 92f0d71b51 WIP support for S2 bounding volumes. 2021-11-04 23:58:58 +11:00
Nithin Pranesh c234ceb735 Continue refactoring subtree loading logic into tile traversal
everything is broken
2021-11-04 00:37:24 -04:00
Nithin Pranesh a86e534c1b add tests for new addSubtree variant and findChildNode 2021-11-03 01:28:40 -04:00
Nithin Pranesh 6dc7a7b787 add faster way to insert new child subtree 2021-11-03 00:46:48 -04:00
Nithin Pranesh b311d44d6b WIP move subtree loading to Tileset.cpp 2021-11-02 04:43:12 -04:00
Ian Lilley 944e85f9d5 added new GLM defines 2021-11-01 10:29:11 -04:00
Nithin Pranesh 380b2f6f87 test OctreeAvailability / fix bugs exploited by test 2021-10-26 16:38:22 -04:00
Nithin Pranesh 6c12c66848 renamed AvailabilityTree -> Availability 2021-10-26 14:49:35 -04:00
Nithin Pranesh 47935f824d fix AvailabilityAccessor, gcc/clang tests should pass now 2021-10-26 11:50:59 -04:00
Nithin Pranesh c3d1e1e660 turn TileAvailabilityFlags into enum + gcc warnings 2021-10-25 23:04:05 -04:00
Nithin Pranesh 7fdd9afbb5 Merge branch 'main' into implicit-tiling 2021-10-25 16:18:31 -04:00
Nithin Pranesh 46cae3bd03 tests for AvailabilityUtilities and QuadtreeAvailability 2021-10-25 16:11:49 -04:00
Kevin Ring 06fd62b6a8 Better handling of geometric error for leaf tiles. 2021-10-19 23:38:41 +11:00
Nithin Pranesh 306fc64d75 more gcc/clang warnings fixed 2021-10-13 11:40:33 -04:00
Nithin Pranesh f5c30aca51 gcc/clang warnings 2021-10-13 11:18:42 -04:00
Nithin Pranesh f9eda479f5 fix some gcc/clang warnings 2021-10-13 11:01:56 -04:00
Nithin Pranesh b5b385424e avoid using a global morton index 2021-10-12 10:12:30 -04:00
Sean Lilley 52283f3359 Fix includes 2021-10-11 17:28:44 -04:00
Nithin Pranesh 1cbb2f4cc9 hook up OctreeAvailability into implicit tiling 2021-10-11 14:41:58 -04:00
Nithin Pranesh ac2db1a119 add OctreeAvailability 2021-10-11 13:52:01 -04:00
Nithin Pranesh 03c0e1da97 better names for availability classes? 2021-10-09 15:49:09 -04:00
Nithin Pranesh 7844ad5d61 remove needless constexpr 2021-10-09 15:29:07 -04:00
Nithin Pranesh c74ddb9f31 small fixes, simple implicit quadtree tileset almost working 2021-10-08 20:52:32 -04:00
Nithin Pranesh 8724a676e8 small fixes, fix test 2021-10-06 20:34:15 -04:00
Nithin Pranesh a3a9177c96 Availability accessors, Generalized some availability functionality
Tried too hook up the subtree content parsing back into the availability tree.
Close to being able to test on a basic tileset.
2021-10-06 16:12:02 -04:00
Nithin Pranesh b8f21fa85f subtree file parsing, some more adjustment to subtree representation
lots of async nonsense
2021-10-06 03:54:47 -04:00
Nithin Pranesh 70d31d64fb implicit tileset parsing, some rearrangement/fixes in quadtreeSubtreeAvailability 2021-10-05 17:23:10 -04:00
Nithin Pranesh 07eb06718a format 2021-10-05 01:22:32 -04:00
Nithin Pranesh b577556e11 fixed issues from merge, added subtree requests 2021-10-05 01:19:52 -04:00
Nithin Pranesh c05591858e Merge branch 'main' into implicit-tiling 2021-10-05 00:23:28 -04:00
Nithin Pranesh be91170625 return more availability info from a single tile availability query 2021-10-04 23:51:48 -04:00
Nithin Pranesh fb2e0374d0 started hooking up quadtree subtree availability
compiling again now, regular quantized mesh working again
2021-10-03 20:55:27 -04:00
Nithin Pranesh a139035a60 finished(?) QuadtreeSubtreeAvailability, everything else still WIP 2021-10-02 21:02:58 -04:00
Nithin Pranesh 0f92b5ef39 WIP some progress on new subtree availability (for quadtrees)
Accidentally assumed subtreeLevels are always 3. Need to generalize that now.
2021-10-02 11:34:00 -04:00
Nithin Pranesh e171dadb6a tiling schemes look correct now and some upgrades in Tile.cpp, availability next 2021-09-29 17:12:59 -04:00
Nithin Pranesh 4e394ddb27 added octree tiling scheme 2021-09-28 12:50:24 -04:00
Marco Hutter 9855400417 Use proper relative paths in all public headers 2021-09-28 17:23:07 +02:00
Marco Hutter 27fdd26e27 Merge remote-tracking branch 'origin/main' into include-style-fixes
# Conflicts:
#	Cesium3DTilesSelection/include/Cesium3DTilesSelection/GltfContent.h
#	Cesium3DTilesSelection/src/Batched3DModelContent.cpp
#	Cesium3DTilesSelection/src/CompositeContent.cpp
#	Cesium3DTilesSelection/src/ExternalTilesetContent.cpp
#	Cesium3DTilesSelection/src/GltfContent.cpp
#	Cesium3DTilesSelection/src/QuantizedMeshContent.cpp
#	Cesium3DTilesSelection/src/Tile.cpp
#	Cesium3DTilesSelection/src/TileContentFactory.cpp
#	Cesium3DTilesSelection/src/calcQuadtreeMaxGeometricError.h
2021-09-28 14:38:33 +02:00
Marco Hutter 0e827f7afd Updated includes based on clang-format with Regroup
This MAINLY inserted some blank lines between
the blocks.
2021-09-26 17:46:27 +02:00
Marco Hutter 49781e9011 Include style fixes for CesiumGeometry 2021-09-19 15:18:58 +02:00
Marco Hutter 3a10d40675 Made Axis an enum class
C26812: The enum type ... is unscoped. Prefer 'enum class' over 'enum'
2021-09-15 16:22:03 +02:00
Marco Hutter 46c9c7ec7d Formatting after adding const 2021-09-15 15:38:06 +02:00
Marco Hutter de8145ab9e Added missing const keyword
C26496: The variable ... is assigned only once, mark it as const
2021-09-15 15:37:29 +02:00
Kevin Ring c0b7b130fb Rename intersect to computeIntersection. 2021-08-23 19:22:08 +10:00
Kevin Ring 188ade5e48 Add tests for computeUnion. 2021-08-23 19:08:28 +10:00
Kevin Ring 96bb7443e0 Add Rectangle changes from clipping-2.5d-kring branch. 2021-08-23 18:56:49 +10:00
Daniel Krupka 8b3bb34827 Rename Cesium3DTiles -> Cesium3DTilesSelection 2021-07-30 11:45:37 -04:00
Kevin Ring 4e45bab460 Use angle brackets to #include catch2. 2021-07-04 22:57:11 +10:00
Kevin Ring 1e784cabc5
Merge pull request #262 from zy6p/feat-geo-test
feat: CesiumGeometry::clipTriangleAtAxisAlignedThreshold add unit test
2021-06-11 15:22:48 +10:00
knowmore f1100c1620 feat: style use noexcept 2021-06-10 09:38:47 +08:00
knowmore ab4c4b05b0 fix: clang-format source code 2021-06-09 23:32:09 +08:00
knowmore f09866589b feat: Geometry clipTriangle unit test 2021-06-09 22:42:11 +08:00
knowmore dcf1bc26e7 feat: TriangleClipVertex == != operate 2021-06-09 22:40:52 +08:00
knowmore 0c6961fee3 fix: format code 2021-05-30 11:02:01 +08:00
knowmore 36691da733 fix: missing includes cstdint 2021-05-30 10:34:44 +08:00
Marco Hutter c8f961c689 Merge remote-tracking branch 'origin/main' into log-tile-ids
# Conflicts:
#	CHANGES.md
2021-05-05 13:47:34 +02:00
Marco Hutter 51e43bbd49 Comment fixes for clang formatting 2021-04-29 17:06:34 +02:00
Marco Hutter 6cfd1c9c88 Added missing header 2021-04-26 17:58:36 +02:00
Kevin Ring 6bb1ac703d Merge remote-tracking branch 'origin/main' into clang-tidy-first-pass 2021-04-15 16:25:45 +10:00
Jordi Torres 6333b1cb0a First pass of clang tidy
Mainly caching else after return, not using empty() instead of size() == 0, missing const references to avoid copies and removing redundant initializations
2021-04-12 13:22:03 +02:00
Marco Hutter 611822bc37 Formatting 2021-04-10 17:15:29 +02:00
Marco Hutter 3a26e98d20 Added unit tests for AxisTransforms 2021-04-10 17:12:47 +02:00
Marco Hutter f7ea567ab6 Renamed Axes to AxisTransforms 2021-04-10 17:12:31 +02:00
Marco Hutter 868094a7ba Converted axis to enum 2021-04-08 17:54:35 +02:00
Marco Hutter d9dada4063 Fixed an import. How did that even work?
MSVC, GCC and Clang complain about valid integer type conversions,
but this self-import remained unnoticed. That's amazing.
2021-04-07 20:03:38 +02:00
Shehzan Mohammed 8a2957d32f Run clang format 2021-03-08 20:39:46 -05:00
Shehzan Mohammed ef8bf72710 Fix missing header files 2021-03-08 20:30:50 -05:00
Shehzan Mohammed 3faff010d7 Installing thirdparty deps working on linux 2021-03-03 20:47:31 -05:00
Kevin Ring 34bbd2aa31 WIP cmake install. 2021-03-04 09:48:09 +11:00
Samuel Vargas 5d03477551
Rearchitecture cesium-native's CMake structure
This is necessary to support using cesium-native as submodule in
in asset-pipeline

- `draco` and `sqlite3` are guarded with if target blocks to allow
  asset-pipeline to provide their own version of the targets.
- Tests are now a dedicated target that clients don't have to build
- Test sources / headers are now a target property instead of using the $<BUILD_INTERFACE... hack
- Added common include variables in extern/CMakeLists.txt
- Defined `RAPIDJSON_HAS_CXX11_RVALUE_REFS` for move support for RapidJson
- Private include directories are automatically extracted via CMake magic
  for use in catch tests
- Globbing is now wrapped in a dedicated function that allows one to use
  CONFIGURE_DEPENDS depending on their preferences (defaults to OFF)
  to retain the old behavior.
2021-03-02 14:28:04 -05:00
Marco Hutter 67dce23a30 Doxygen fixes 2021-02-15 17:14:49 +01:00
Marco Hutter 22c7883f24 Merge remote-tracking branch 'origin/master' into camera-refactoring 2021-02-02 15:41:05 +01:00
Marco Hutter 37706adc76 Moved CullingVolume to CesiumGeometry
Also removed const of members
2021-02-01 16:12:26 +01:00
Marco Hutter 731b0a8515 Refactored Camera into ViewState
Renamed the structure from Camera to ViewState. Removed properties
that had not been used and functions that had not been called. Made
it as const as possible (as it is not supposed to be modified
during traversal). Extracted Frustum structure from the four
planes.
2021-01-26 22:10:44 +01:00
Kevin Ring 06fe04dd16 Preserve precision in upsampled tile rectangles. 2021-01-22 18:49:37 +11:00
Kevin Ring b654781b10 Merge remote-tracking branch 'origin/master' into upsample-skirt 2021-01-05 15:01:58 +11:00
unknown c1c1408160 add option to expose private src for other libraries. Add tests for SkirtMeshMetadata 2020-12-23 15:57:08 -05:00
Nithin Pranesh 89b88f14ed Marked classes final
All classes marked final except for RasterOverlay, RasterOverlayTileProvider, ITaskProcessor, IPrepareRendererResources, and IAsset*.
2020-12-07 10:45:47 -05:00
Kevin Ring eb4c238856 Add noexcept and constexpr in more places. 2020-12-03 23:37:21 +11:00
Kevin Ring e2a3f0d2db Add constexpr and noexcept in a bunch of places. 2020-12-03 23:18:32 +11:00
Kevin Ring fc0e171c03 Fix problems compiling with clang. 2020-12-03 10:23:17 +11:00
Marco Hutter e1e8782f00 Added last documentation. Minor fixes. 2020-11-11 16:25:35 +01:00
Marco Hutter e3f4c8419f Documentation for TileContext. Minor fixes. 2020-11-11 15:43:08 +01:00
Marco Hutter 808b0cfd6a Minor code fixes.
Details summarized in PR.
2020-11-03 23:13:00 +01:00
Marco Hutter ecab20fe03 Documentation fixes from review comments 2020-11-03 18:31:27 +01:00
Marco Hutter 40dc4bd883
Apply basic suggestions from code review
This contains the changes that could be applied directly (typos and 
minor wording changes). Further suggestions will be addressed 
with a separate commit.

Co-authored-by: Kevin Ring <kevin@kotachrome.com>
2020-11-03 15:17:25 +01:00
Marco Hutter 8ee683a39e Documentation fixes, pedantic mode. 2020-11-01 16:46:54 +01:00
Marco Hutter 86752aecea Removed invalid namespace prefix 2020-10-31 17:44:03 +01:00
Marco Hutter b88026112f Documentation for basic classes. Minor fixes.
Documentation for some of the basic classes in CesiumGeospatial
(partially taken from CesiumJS).

Basic documentation for Tile IDs.

Minor fixes for links and formatting.
2020-10-31 17:38:12 +01:00
Marco Hutter c1440647f6 Merge remote-tracking branch 'origin/master' into basic-doxygen-fixes-part-2
# Conflicts:
#	Cesium3DTiles/include/Cesium3DTiles/Tile.h
2020-10-31 15:02:08 +01:00
Kevin Ring 2f2cdd1074 Use glm funcs, avoid public cutouts field. 2020-10-29 10:25:51 +11:00
Marco Hutter 6a777929c1 Smaller doxygen fixes and extensions
Mainly minor fixes, mainly done while browsing over the
code while reading more about the usage and implementation
2020-10-28 19:37:42 +01:00
Kevin Ring 5d5b80ecb9 Make Rectangle a struct because it has public fields. 2020-10-28 16:01:55 +11:00
Kevin Ring 8089c66a01
Merge pull request #23 from CesiumGS/basic-doxygen-fixes
Basic doxygen fixes
2020-10-28 15:56:56 +11:00
Kevin Ring 4cdd618dd0
Update CesiumGeometry/include/CesiumGeometry/Rectangle.h 2020-10-28 15:53:26 +11:00
Marco Hutter b72787029d Documentation for namespaces
Without them, typedefs of these namespaces did not
appear in the documentation
2020-10-26 23:50:21 +01:00
Marco Hutter d424c601b3 Documentation for basic classes and TileSelectionState 2020-10-26 23:06:29 +01:00
Marco Hutter 2b4cdc95ac First, basic doxygen fixes
Mainly fixing broken links from invalid "see" references,
missing classes, and basic elements that had been undocumented
2020-10-26 19:07:18 +01:00