forked from 1b-agent/opencadstudio-upstream
feat(scene): tessellate loaded ACIS solids via the truck B-rep kernel
Rebuild every ACIS face as a truck topological Face and mesh it with truck, routing loaded 3DSOLID/BODY/REGION/SURFACE through the same kernel the Model tab uses. plane→try_attach_plane, cone/cylinder/sphere/torus→revolution faces (truck's Surface has no cone/sphere/torus), spline→BSplineSurface grid sample. Per-vertex normals are computed analytically outward per surface type and triangle winding is oriented to match, since truck's own orientation isn't consistent across independently built faces. `tessellate_solid3d|body|region| surface` try this first and fall back to the bespoke sampler. Light the mesh shader with three spread directional lights plus ambient (abs(dot) per light, two-sided) so faces — including the inner walls of an open lofted surface — never read as a flat dark mass. Co-Authored-By: Claude Opus 4.8 <[email protected]>
This commit is contained in:
1 parent
9d823363f1
commit
0badf48454
4 files changed
+482
-16
No files matched your search
@@ -25,6 +25,7 @@ pub(super) struct EntityIndex {
|
||||
}
|
||||
pub(crate) mod render;
|
||||
mod selection;
|
||||
pub mod acis_to_truck;
|
||||
pub mod solid3d_tess;
|
||||
pub mod spline_tess;
|
||||
pub mod tess_util;
|
||||
|
||||
Reference in new issue
Block a user