Skip to content

Conversation

@jmaack24
Copy link
Member

Implementation of EmbreeRunner to utilize Intel's Embree ray tracing library (sold separately...).

@jmaack24 jmaack24 self-assigned this Jan 13, 2026
@jmaack24 jmaack24 linked an issue Jan 13, 2026 that may be closed by this pull request
@jmaack24 jmaack24 marked this pull request as ready for review January 15, 2026 19:40
@jmaack24 jmaack24 requested a review from Copilot January 15, 2026 19:40
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 67 out of 68 changed files in this pull request and generated 8 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 126 to 127
// increment position by tiny amount to get off the element if
// tracing to the same element
Copy link

Copilot AI Jan 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed typo: 'increment' should start with capital 'I' to match comment style, and the comment should end with a period.

Suggested change
// increment position by tiny amount to get off the element if
// tracing to the same element
// Increment position by tiny amount to get off the element if
// tracing to the same element.

Copilot uses AI. Check for mistakes.
float (&min_coord_global)[3],
float (&max_coord_global)[3]);

} // namespace embree_helper
Copy link

Copilot AI Jan 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Namespace comment is incorrect. Should be '// namespace SolTrace::EmbreeRunner' to match the actual namespace declaration at line 8.

Suggested change
} // namespace embree_helper
} // namespace SolTrace::EmbreeRunner

Copilot uses AI. Check for mistakes.
@@ -0,0 +1,90 @@
#include "find_element_hit.hpp"
Copy link

Copilot AI Jan 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Incorrect include file name. Should be 'find_element_hit_embree.hpp' instead of 'find_element_hit.hpp'.

Suggested change
#include "find_element_hit.hpp"
#include "find_element_hit_embree.hpp"

Copilot uses AI. Check for mistakes.
Comment on lines 669 to 671
TEST(Aperture, BoundingBox)
{
}
Copy link

Copilot AI Jan 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Empty test case should either be implemented or removed. The test name suggests it should test aperture bounding box functionality but has no implementation.

Copilot uses AI. Check for mistakes.
Comment on lines +124 to +125
assert(is_approx(x_minmax[0], -r, 1e-6));
assert(is_approx(x_minmax[1], r, 1e-6));
Copy link

Copilot AI Jan 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using assert for input validation in production code. Consider using a proper error handling mechanism or documenting that these are debug-only checks. Asserts are typically disabled in release builds.

Suggested change
assert(is_approx(x_minmax[0], -r, 1e-6));
assert(is_approx(x_minmax[1], r, 1e-6));
if (!is_approx(x_minmax[0], -r, 1e-6))
throw std::invalid_argument("Cylinder::bounding_box: x_minmax[0] must be approximately -radius");
if (!is_approx(x_minmax[1], r, 1e-6))
throw std::invalid_argument("Cylinder::bounding_box: x_minmax[1] must be approximately +radius");

Copilot uses AI. Check for mistakes.
EXPECT_NE(rr->get_event(iidx), RayEvent::ABSORB);
EXPECT_NE(rr->get_event(iidx), RayEvent::EXIT);

if(rr->get_event(iidx) == RayEvent::ABSORB)
Copy link

Copilot AI Jan 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing space after 'if' keyword. Should be 'if (rr->get_event(iidx) == RayEvent::ABSORB)'.

Copilot uses AI. Check for mistakes.
this->number_of_elements += el->get_number_of_elements();
el->set_reference_element(this);
// Mark any added elements as virtual if needed
if(this->is_virtual())
Copy link

Copilot AI Jan 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing space after 'if' keyword. Should be 'if (this->is_virtual())'.

Suggested change
if(this->is_virtual())
if (this->is_virtual())

Copilot uses AI. Check for mistakes.
Comment on lines 249 to 251
// TODO: Fix ? This is really only the top half of the cylinder
// Clyinder breaks the model since it is a mulit-valued fuction: each
// x values produces two z values Returning only the positive root
Copy link

Copilot AI Jan 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Multiple spelling errors: 'Clyinder' should be 'Cylinder', 'mulit-valued fuction' should be 'multi-valued function', and missing period after 'root'.

Suggested change
// TODO: Fix ? This is really only the top half of the cylinder
// Clyinder breaks the model since it is a mulit-valued fuction: each
// x values produces two z values Returning only the positive root
// TODO: Fix ? This is really only the top half of the cylinder.
// Cylinder breaks the model since it is a multi-valued function: each
// x value produces two z values. Returning only the positive root.

Copilot uses AI. Check for mistakes.
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 67 out of 68 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement Embree Runner

2 participants