Skip to content

Give warning if new floorplan.json is created for model with existing geometry #857

Open

Description

@macumber

Enhancement Request

See NatLabRockies/OpenStudio#5599

Activity

  1. added
    TriageIssue needs to be assessed and labeled, further information on reported might be needed
    on Feb 8, 2026
  2. kousu commented on Feb 9, 2026

    @kousu

    Thanks for guiding this to the correct repository 🔔 . Sorry, I was a little unsure what lived where.

    The problem I was having was more that there's no way to make a new floorplan.json in a model with an existing geometry in the first place. A deleted/missing floorplan.json disables the geometry editor entirely unless the geometry (which I take it is stored in the .osm file?) is also missing.

    Image Image

    When I loaded my model, I got a warning about the missing weather file:

    Image

    so I was alerted that something was wrong and I was able to re-attach the weather file I'd used, but I got no warning about the geometry.

    I stumbled into this because I'm new to OpenStudio, admittedly, so there's some amount of user error and/or available UX improvement here. I thought that the folder that goes along with a .osm file was just for output; I only committed my .osm file and tried to share it alone with colleagues.

    I think my ideal fix would be for the model inputs to all be saved in a .zip, separate from the outputs so there's no way to make that mistake.
    Since that's a big change, my second most ideal suggestion is to give warnings for all missing sub-files at load-time. And the "new" button should work in the editor regardless, but if there's existing 3d geometry it should warn.

    I hope that's not too complicated of an ask.

  3. Ski90Moo commented on Jul 3, 2026

    @Ski90Moo
    Contributor

    Ok, so there are multiple facets to this issue.

    1. Exporting just the .osm file loses or breaks dependencies of relevant information about the model between the .osm file and the .json file. (eg. weather files, .json files, .osw files, etc.).
      A recommended fix would be to add a "OSM Input" option to the top main menu bar at File->Export. This would package the model (.osm file + the run folder with .osw file + the files sub-folder with .epw file + the measures sub-folder with all sub-folders and files) into a zipped file.
    2. There is no way to make a new floorplan.json in a model with an existing geometry.
      I believe this is intentional. Giving the user the ability to create a new floorplan in a model with existing geometry could potentially create overlapping geometry which would crash the program or would delete the existing geometry altogether.
      The "new" button should always work, even if there is existing geometry.
      A recommended fix: Always allow the "new" button. If there is existing geometry, it should warn the user that "continuing will delete all existing geometry and dependent spaces". If the user continues, all existing geometry and spaces will be deleted (this is the equivalent of going to the Spaces tab, selecting all spaces, and deleting).
    3. There should be warnings for missing sub-files at load-time.
      I am not sure if this is possible. The .osm file its self does not internalize the openstudio workflow and associated measures. An openstudio model if composed of multiple, disparate files that get integrated at run time. Therefore there would be no way of knowing other files exist. A possible solution would be to package everything into another file type; such as a .osr (OpenStudio Runtime file). But it may have unintended consequences such as creating difficulty in sharing with others who use the OpenStudio CLI.
      The solution to this may be just to package into a zip as recommended in item 1 above.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Enhancement RequestNew feature or requestTriageIssue needs to be assessed and labeled, further information on reported might be needed

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions