Skip to content

Commit

Permalink
fix paths for linux
Browse files Browse the repository at this point in the history
  • Loading branch information
MagnumVD committed Jan 2, 2025
1 parent 72cd27d commit 2303674
Show file tree
Hide file tree
Showing 6 changed files with 18 additions and 18 deletions.
2 changes: 1 addition & 1 deletion __init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ class RotoForge_Preferences(bpy.types.AddonPreferences):
name="Install path",
description="Directory where additional dependencies for the addon are downloaded (NEEDS ~8GB SPACE)",
subtype='DIR_PATH',
default=os.path.realpath(os.path.expanduser("~\\MVD-addons dependencies\\RotoForge AI"))
default=os.path.realpath(os.path.expanduser("~/MVD-addons dependencies/RotoForge AI"))
) # type: ignore

def draw(self,context):
Expand Down
16 changes: 8 additions & 8 deletions functions/data_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ def save_sequential_mask(source_image, used_mask, best_mask, cropping_box, blur
frame = str(bpy.context.scene.frame_current)
width, height = source_image.size

# The img seq will be saved in a folder named after the mask in the RotoForge\\masksequences dir
# The img seq will be saved in a folder named after the mask in the RotoForge/masksequences dir
folder = used_mask
img_seq_dir = os.path.join(get_rotoforge_dir('masksequences'), folder)
image_path = os.path.join(img_seq_dir, frame + '.png')
Expand All @@ -46,7 +46,7 @@ def save_sequential_mask(source_image, used_mask, best_mask, cropping_box, blur
return np.asarray(best_mask)

def save_singular_mask(source_image, used_mask, best_mask, cropping_box, blur = 0.0):
# The img will be saved in a folder named after the mask in the RotoForge\\masksequences dir
# The img will be saved in a folder named after the mask in the RotoForge/masksequences dir
folder = used_mask
img_seq_dir = os.path.join(get_rotoforge_dir('masksequences'), folder)

Expand Down Expand Up @@ -198,8 +198,8 @@ def sync_mask_update(origin):
print('RotoForge AI: renamed layer:', layer_name_old, '->', layer_name_new)
mask.rotoforge_maskgencontrols[layer_name_old].name = layer_name_new

image_name_old = f"{mask.name}\\MaskLayers\\{layer_name_old}"
image_name_new = f"{mask.name}\\MaskLayers\\{layer_name_new}"
image_name_old = f"{mask.name}/MaskLayers/{layer_name_old}"
image_name_new = f"{mask.name}/MaskLayers/{layer_name_new}"
image_path_old = os.path.join(mask_seq_dir, image_name_old)
image_path_new = os.path.join(mask_seq_dir, image_name_new)
shutil.move(image_path_old, image_path_new)
Expand Down Expand Up @@ -324,7 +324,7 @@ def load_project(origin):
for mask in bpy.data.masks:
for layer in mask.layers:
# Load masksequence into blenders memory
folder = f"{mask.name}\\MaskLayers\\{layer.name}"
folder = f"{mask.name}/MaskLayers/{layer.name}"
update_maskseq(folder)

# Append the layer to the rf layer collection
Expand Down Expand Up @@ -377,11 +377,11 @@ def update_old_projects(origin):
save_after_update = True

if loaded_version == Version('1.0.0'):
# Move '//RotoForge masksequences' to '//RotoForge\\outdated_masksequences' and move from ospath to local
# Move '//RotoForge masksequences' to '//RotoForge/outdated_masksequences' and move from ospath to local

# Moves all files from the old rf dir to the new rf dir for outdates masksequences
mask_seq_path_old = bpy.path.abspath('//RotoForge masksequences')
mask_seq_path_new = bpy.path.abspath('//RotoForge\\outdated_masksequences')
mask_seq_path_new = bpy.path.abspath('//RotoForge/outdated_masksequences')

if os.path.isdir(mask_seq_path_old):
# Iterate through all items in the source directory
Expand Down Expand Up @@ -477,7 +477,7 @@ def execute(self, context):
update_maskseq(self.mask_seq_name, outdated=True)

image_name_old = self.mask_seq_name
image_name_new = f"{mask.name}\\MaskLayers\\{layer.name}"
image_name_new = f"{mask.name}/MaskLayers/{layer.name}"
image_path_old = os.path.join(mask_seq_dir_old, image_name_old)
image_path_new = os.path.join(mask_seq_dir_new, image_name_new)

Expand Down
2 changes: 1 addition & 1 deletion functions/generate_masks.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ def get_predictor(model_type):

# Fetch predictor
print('loading predictor')
sam_checkpoint = f"{get_install_folder('sam_hq_weights')}\\sam_hq_{model_type}.pth"
sam_checkpoint = f"{get_install_folder('sam_hq_weights')}/sam_hq_{model_type}.pth"

sam = segment_anything_hq.sam_model_registry[model_type](checkpoint=sam_checkpoint)
sam.to(device=device)
Expand Down
4 changes: 2 additions & 2 deletions functions/mask_rasterize.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ def rasterize_active_mask():
#Skip the layer if it's hidden
if prev_layer_settings[layer.name][0] == True:
continue
image_name = f"{mask.name}\\MaskLayers\\{layer.name}"
image_name = f"{mask.name}/MaskLayers/{layer.name}"

if rf_props.is_rflayer and image_name in bpy.data.images:
# Load the rotoforge masksequence
Expand Down Expand Up @@ -182,7 +182,7 @@ def rasterize_layer_of_active_mask(layer, resolution, rf_allowed = False, hide_u
context.window.scene = original_scene

rf_props = mask.rotoforge_maskgencontrols[layer.name]
image_name = f"{mask.name}\\MaskLayers\\{layer.name}"
image_name = f"{mask.name}/MaskLayers/{layer.name}"

if rf_allowed and rf_props.is_rflayer and image_name in bpy.data.images:
# Load the rotoforge masksequence
Expand Down
2 changes: 1 addition & 1 deletion functions/overlay.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ def rotoforge_overlay_shader():
return

else:
image_name = f"{mask.name}\\Combined"
image_name = f"{mask.name}/Combined"

use_combined = overlay_controls.use_combined
only_active_layer = overlay_controls.only_active_layer
Expand Down
10 changes: 5 additions & 5 deletions functions/setup_ui.py
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ def execute(self, context):
guide_strength = maskgencontrols.guide_strength
blur_radius = maskgencontrols.feather_radius

used_mask = f"{mask.name}\\MaskLayers\\{layer.name}"
used_mask = f"{mask.name}/MaskLayers/{layer.name}"

generate_masks.generate_mask(source_image = image,
used_mask = used_mask,
Expand Down Expand Up @@ -245,7 +245,7 @@ def execute(self, context):


# Get the folder to write to
used_mask = f"{mask.name}\\MaskLayers\\{layer.name}"
used_mask = f"{mask.name}/MaskLayers/{layer.name}"
self._used_mask_dir = used_mask


Expand Down Expand Up @@ -342,7 +342,7 @@ def execute(self, context):


# Get the folder to write to
used_mask = f"{mask.name}\\Combined"
used_mask = f"{mask.name}/Combined"
self._used_mask_dir = used_mask

self._next_processed_frame = mask.frame_start # Set last processed frame
Expand Down Expand Up @@ -414,7 +414,7 @@ def get_selected(nodetree):
nodetree = nodetree.nodes.active.node_tree

used_mask = bpy.data.masks[import_props.used_mask]
used_mask_img = bpy.data.images[f"{import_props.used_mask}\\Combined"]
used_mask_img = bpy.data.images[f"{import_props.used_mask}/Combined"]

# Add node
nodetree_type = nodetree.type
Expand Down Expand Up @@ -644,7 +644,7 @@ class NodeImportControls(bpy.types.PropertyGroup):
def update_mask_options(self, context):
possible_mask = []
for mask in bpy.data.masks:
image_name = f"{mask.name}\\Combined"
image_name = f"{mask.name}/Combined"
if image_name in bpy.data.images:
possible_mask.append(mask.name)
return [(element, element, f'Import the mask "{element}"') for element in possible_mask]
Expand Down

0 comments on commit 2303674

Please sign in to comment.