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

Noproj application bug - Missing keywords prevent use of Bullet collision detection engine. #5377

Closed
kledmundson opened this issue Dec 14, 2023 · 0 comments
Labels
bug Something isn't working

Comments

@kledmundson
Copy link
Contributor

ISIS version(s) affected: latest

Description

In OSIRIS-REx processing a bug was discovered in the noproj application. Missing keywords (RayTraceEngine, BulletParts, Tolerance) related to the shapemodel are dropped when noproj creates the output label. This causes problems for Bullet engine configurations that use the .conf or .obj formats. In fact, Bullet was never used. The NAIF DSK toolkit was used by default for geometry calculations. This has been resolved in the UofA OSIRIS-REx ISIS code base.




How to reproduce

Relevant Code…

Original code fragment

// Clean up the kernels group... delete everything that isn't internalized or the orig frame
// code
PvlGroup &kernelsGroup = ocube->group("Kernels");
for (int keyIndex = kernelsGroup.keywords() - 1; keyIndex >= 0; keyIndex--) {
PvlKeyword &kernelsKeyword = kernelsGroup[keyIndex];

    bool isTable = false;
    bool isFrameCode = kernelsKeyword.isNamed("NaifFrameCode") ||
                       kernelsKeyword.isNamed("NaifIkCode");
    bool isShapeModel = kernelsKeyword.isNamed("ShapeModel”);

Fixed code fragment

// Clean up the kernels group... delete everything that isn't internalized or the orig frame
// code
PvlGroup &kernelsGroup = ocube->group("Kernels");
for (int keyIndex = kernelsGroup.keywords() - 1; keyIndex >= 0; keyIndex--) {
PvlKeyword &kernelsKeyword = kernelsGroup[keyIndex];

    bool isTable = false;
    bool isFrameCode = kernelsKeyword.isNamed("NaifFrameCode") ||
                       kernelsKeyword.isNamed("NaifIkCode");
    bool isShapeModel = kernelsKeyword.isNamed("ShapeModel") ||
                        kernelsKeyword.isNamed("RayTraceEngine") ||
                        kernelsKeyword.isNamed("BulletParts") ||
                        kernelsKeyword.isNamed("Tolerance");

Possible Solution

Additional context

@kledmundson kledmundson added the bug Something isn't working label Dec 14, 2023
kledmundson added a commit to kledmundson/ISIS3 that referenced this issue Dec 14, 2023
…ngine, BulletParts, Tolerance) are dropped when the output label is created. This resulted in the Bullet collision detection engine not being used. Addresses DOI-USGS#5377.
acpaquette pushed a commit that referenced this issue Jan 9, 2024
…ngine, BulletParts, Tolerance) are dropped when the output label is created. (#5378)

* Fixed noproj bug where missing shapemodel-related keywords (RayTraceEngine, BulletParts, Tolerance) are dropped when the output label is created. This resulted in the Bullet collision detection engine not being used. Addresses #5377.

* Per review, moved changelog entry to the Unreleased section. Addresses #5377.
acpaquette pushed a commit to acpaquette/ISIS3 that referenced this issue Apr 19, 2024
…ngine, BulletParts, Tolerance) are dropped when the output label is created. (DOI-USGS#5378)

* Fixed noproj bug where missing shapemodel-related keywords (RayTraceEngine, BulletParts, Tolerance) are dropped when the output label is created. This resulted in the Bullet collision detection engine not being used. Addresses DOI-USGS#5377.

* Per review, moved changelog entry to the Unreleased section. Addresses DOI-USGS#5377.
acpaquette added a commit that referenced this issue Apr 19, 2024
* Disable HRSC from spice server (#5270)

* Disable HRSC from spice server

* added docs

* Added test

* added changelog

* Update spiceinit URL (#5431)

* Update spiceinit URL

* added changelog

* Removed capital E that caused an error (#5466)

* Removed capital E that caused an error

* Updated changelog

* Updated references to isis_version.txt (#5464)

* Updated references to isis_version.txt

* Updated changelog

* Removed IrregularBodyCameraGroundMap.truth file. (#5462)

* Removed IrregularBodyCameraGroundMap.truth file. Had neglected to do so in original Tagcams instrument import PR. Addresses #5461.

* Changelog entry for removal of IrregularBodyCameraGroundMap truth file. Addresses #5461.

* Update HistogramTool to better support high dynamic range images (#5445)

* Updated histogram to create bin size based on dynamic range of window instead of full image

* Updated changelog

* Changed 'version' filename to honor reserved keyword. (#5434)

* Changed 'version' filename to honor cmake reserved keyword.

Changed 'version' filename to isis_version.txt. 'version' is a reserved
keyword in cmake.  Additionally, the extension should prevent this file
from being compiled as source, and eliminate the recompilation error.

* Updated changelog

* Reverted accidental change to version

* Updated version file name

* Fixed noproj bug where missing shapemodel-related keywords (RayTraceEngine, BulletParts, Tolerance) are dropped when the output label is created. (#5378)

* Fixed noproj bug where missing shapemodel-related keywords (RayTraceEngine, BulletParts, Tolerance) are dropped when the output label is created. This resulted in the Bullet collision detection engine not being used. Addresses #5377.

* Per review, moved changelog entry to the Unreleased section. Addresses #5377.

* Fixed bug in noproj where some temporary files were not deleted after completion (#5403)

* Fixed noproj bug where some temporary files were not cleaned up (deleted) after call to cam2cam. Also reworked how these temporary files are identified. Addresses #4813.

* Added copyright statement at top of source and header files. Addresses #4813.

* Fixed Underscore Env Var Expansion (#5402)

* Fixed env var expansion to include underscores

* Added test to cover change

* Added changelog entry

* Renamed tests

* Fixes match cube default to NULL (#5429)

* Updated rclone.conf to point to naif archived kernels (#5442)

* naif source includes /pub/naif, _naifkernels point to archived locations if available

* https for naif

* naif kernel fix description in changelog

* Fits Import fix (#5469)

* Fixed FitsToJson subprocess error

* Added changelog entry

* Update Hayabusa2 translation (#5433)

* Add spacecraft name trn

* Update changelog

* Added hyb2onc2isis test

---------

Co-authored-by: Kelvin Rodriguez <krodriguez@usgs.gov>

* Added Code.json entry

* Update CHANGELOG.md

* Update version in meta.yaml

* Update version in CMakeLists.txt

---------

Co-authored-by: Amy Stamile <74275278+amystamile-usgs@users.noreply.github.com>
Co-authored-by: Austin Sanders <arsanders@usgs.gov>
Co-authored-by: kledmundson <6842706+kledmundson@users.noreply.github.com>
Co-authored-by: Jacob Cain <115182890+jrcain-usgs@users.noreply.github.com>
Co-authored-by: Christine Kim <125395064+chkim-usgs@users.noreply.github.com>
Co-authored-by: Kelvin Rodriguez <krodriguez@usgs.gov>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants