Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Pro/E input to intersection shaping driver #1111

Merged
merged 33 commits into from
Jun 13, 2023
Merged
Changes from 1 commit
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
9568fb8
Add read_pro_e_mesh() to QuestHelpers
bmhan12 Apr 26, 2023
e534268
Test read_pro_e_mesh() usage --not sure if I will keep this?
bmhan12 Apr 26, 2023
6b10c22
Update submodule with examples
bmhan12 Apr 26, 2023
81ff869
Add Pro/E option to loadShape()
bmhan12 Apr 26, 2023
8e832c4
WIP - separate out Pro/E and c2c workflow
bmhan12 Apr 26, 2023
fc283fb
sanity Pro/E mesh output
bmhan12 Apr 26, 2023
daafa84
Add compute bounding box overload for tetrahedron
bmhan12 May 1, 2023
253d72d
WIP - setup tet mesh
bmhan12 May 1, 2023
a3def93
Post merge changes - filterMesh() operation for c2c guard
bmhan12 May 1, 2023
d8caa1d
WIP - runShapeQuery equivalent for proe
bmhan12 May 5, 2023
48882cd
IndexType over int
bmhan12 May 8, 2023
100fce7
Check file format and file type before reading
bmhan12 May 10, 2023
93fe2fe
Check for duplicate vertices in valid polyhedron check; add special t…
bmhan12 May 10, 2023
66813c3
WIP - move format check inside IntersectionShaper class instead of at…
bmhan12 May 10, 2023
129b16f
Add mixed proe/c2c unit test case
bmhan12 May 10, 2023
0eb779d
Add proe-only test case with baseline
bmhan12 May 12, 2023
fd260c0
Properly guard the new proe tests in non-RAJA, non-Umpire case
bmhan12 May 24, 2023
67c9f8c
Refactoring of prepareShapeQuery
bmhan12 May 24, 2023
eda9dcc
Use ArrayView over pointer copies
bmhan12 May 31, 2023
4ce4d77
Refactor runShapeQuery; make NUM_VERTS standard between Octs and Tets
bmhan12 Jun 1, 2023
917ed8f
Cleanup
bmhan12 Jun 2, 2023
f42abd0
Put duplicate vertices check into kernel body to remove warning; bugf…
bmhan12 Jun 5, 2023
f263fd1
Unused
bmhan12 Jun 6, 2023
50d2d43
Make hasDuplicateVertices() function standalone with tolerance, remov…
bmhan12 Jun 6, 2023
811a52b
Convert bounding boxes and hexes to Array
bmhan12 Jun 7, 2023
c843ec6
Additional Array refactoring, but hanging on rzvernal...
bmhan12 Jun 7, 2023
72bfd43
Leave troublesome allocations as ptrs instead of Arrays
bmhan12 Jun 7, 2023
7cb0d8a
Refactor oct/tet members to use Array, refactor Discretize functions …
bmhan12 Jun 7, 2023
d340e93
Workaround changes for gcc@8.1.0 compiler
bmhan12 Jun 9, 2023
b2a7b1b
Update notes
bmhan12 Jun 9, 2023
d799f4d
Wordsmithing
bmhan12 Jun 9, 2023
f4c1907
smithing, consistent style
bmhan12 Jun 9, 2023
dc5bd9e
Workaround for marching cubes for gcc@8.1.0~fortran compiler
bmhan12 Jun 12, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
WIP - separate out Pro/E and c2c workflow
  • Loading branch information
bmhan12 committed Jun 12, 2023
commit 8e832c4461ac833c8ae68df6c73a50e9d6c57b7d
48 changes: 33 additions & 15 deletions src/axom/quest/examples/shaping_driver.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -544,25 +544,43 @@ int main(int argc, char** argv)
SLIC_INFO(axom::fmt::format("{:=^80}", "Sampling InOut fields for shapes"));
for(const auto& shape : params.shapeSet.getShapes())
{
// Load the shape from file. This also applies any transformations.
shaper->loadShape(shape);
slic::flushStreams();
std::string shapeFormat = shape.getGeometry().getFormat();
SLIC_INFO(axom::fmt::format(
"{:-^80}",
axom::fmt::format("Shape format is {}", shapeFormat)));

// Generate a spatial index over the shape
shaper->prepareShapeQuery(shapeDim, shape);
slic::flushStreams();
// Testing separate workflow for Pro/E
if (shapeFormat == "proe")
{
SLIC_INFO(axom::fmt::format("{:*^80}", "Processing Pro/E shape!"));

// Query the mesh against this shape
shaper->runShapeQuery(shape);
slic::flushStreams();
// Load the shape from file
shaper->loadShape(shape);
slic::flushStreams();
}

// Apply the replacement rules for this shape against the existing materials
shaper->applyReplacementRules(shape);
slic::flushStreams();
else
{
// Load the shape from file
shaper->loadShape(shape);
slic::flushStreams();

// Finalize data structures associated with this shape and spatial index
shaper->finalizeShapeQuery();
slic::flushStreams();
// Generate a spatial index over the shape
shaper->prepareShapeQuery(shapeDim, shape);
slic::flushStreams();

// Query the mesh against this shape
shaper->runShapeQuery(shape);
slic::flushStreams();

// Apply the replacement rules for this shape against the existing materials
shaper->applyReplacementRules(shape);
slic::flushStreams();

// Finalize data structures associated with this shape and spatial index
shaper->finalizeShapeQuery();
slic::flushStreams();
}
}

//---------------------------------------------------------------------------
Expand Down