Tags: MeshInspector/MeshLib
Tags
cutMesh: count intersected edges once, not cumulatively per contour (#… …6870) Since #6207 doPreCutMesh added the running total of intersected edges to numEdges on every contour iteration, so the reserved edge count grew quadratically with the number of contours. Boolean of two coincident ~2M-triangle meshes produced enough contours to overflow int and edgeReserve() threw std::length_error (or std::bad_alloc a bit earlier). The add now happens once after the loop, restoring the pre-#6207 count.
Coordinate converters as structs instead of std::function (#6505) * converters * Update C test and example for new converter binding signature ConvertToIntVector is now a plain struct instead of std::function, so the generated MR_findCollidingEdgeTrisPrecise_5 takes it by const pointer without MR_PassBy. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * improvements --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Coordinate converters as structs instead of std::function (#6505) * converters * Update C test and example for new converter binding signature ConvertToIntVector is now a plain struct instead of std::function, so the generated MR_findCollidingEdgeTrisPrecise_5 takes it by const pointer without MR_PassBy. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * improvements --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
ci(test-only): fix smoke-test steps -- use 'call' for nested .bat
Without 'call', invoking thirdparty\install.bat from another cmd script
transfers control permanently and the parent script's if/echo never run.
The previous run (74366682868) showed install.bat correctly exiting 1
("Error: --extra-requirements requires a file path argument.") but the
step still failed because the temp script just inherited that exit code.
Add explicit 'exit /b 0' at the end of each step so the success path
returns clean.
ci(prepare-images): keep matrix cell name as "(<distro>, <arch>)" Dynamic-include cells get auto-named from every key in the entry, so the previous shape produced linux-image-build-upload (ubuntu22, arm64, -arm64, ubuntu-24.04-arm) duplicating arm64 and leaking runner/image-suffix details. Drop image-suffix and os from the matrix entries and derive both from matrix.arch inline (runs-on + image env). Cell name is now just "(<distro>, <arch>)", matching the static-matrix baseline.
ci(vcpkg): skip Release build for x64-windows-meshlib-iterator-debug … …triplet The x64-windows-meshlib-iterator-debug triplet is only consumed by the Debug-IteratorDebug matrix cell in windows-*-config.json, which links exclusively against the Debug variant. Building the Release variant in prepare-images.yml's windows-vcpkg-build-upload job (and writing it to the per-triplet S3 cache at s3://vcpkg-export/<tag>/<triplet>/) is wasted work. Set VCPKG_BUILD_TYPE=debug in the triplet so vcpkg only produces Debug artifacts. The Release variant of x64-windows-meshlib (used by Release consumers) is unaffected since cache paths are partitioned by triplet. Also drop the redundant "-T v142" added via VCPKG_CMAKE_CONFIGURE_OPTIONS; the platform toolset is already pinned by VCPKG_PLATFORM_TOOLSET above. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
PreviousNext