Unable to set options for selected object

Issue #193 resolved
Roberto Lo Giacco created an issue

The latest sources executed on Windows seem ignoring any option set on the Selected tab. The only way i found to push changes is by setting it on the Options tab and then transferring it from Application to Project and then from Project to Object.

I've personally tested gaps cutout selection, bounding box margin and all of the isolation routing options...

Comments (12)

  1. Roberto Lo Giacco reporter

    Let's say I import a gerber and I want to generate the isolation geometry. I then select the gerber, switch to the selected tab, where the tool width setting is 0.2mm (my default value), but I decide I want to use a 1mm tool width. I set the value and then click on the generate button, but the generated geometry is using a 0.2 tool width.

    It get's more evident if I decide to create a board cut or boundary box: my default setting for board cut is 4 gaps, but if I want to use a 2 (top/bottom) gaps, I change the radio and click on the generate button: the generated geometry still has 4 gaps (the default value).

    The only way I managed to set those values was by changing the default and copy the settings from application to project to object. At that point the 2 gaps setting is correctly handled.

    If you wish I can record a short video of my screen.

  2. Juan Pablo Caram repo owner

    Okay, I understand now. Better than a video would be the log messages in the terminal, starting when you type the desired values into the form, until after you've pressed the "Generate" button. I'm hoping there is some error message or other clue there.

  3. Roberto Lo Giacco reporter

    There was nothing I could find other than the radio toggled line being repeated...

    [DEBUG][MainThread] Mouse button pressed on list
    [DEBUG][Dummy-1] Canvas update requested: [0, 0, 0, 0, 0]
    [DEBUG][Dummy-1] Size: (682.66666666666663, 640.0) [px]
    [DEBUG][Dummy-1] Density: (0.044714355468750008, 0.044714355468750008) [units/px]
    [DEBUG][MainThread] Cache updated the screen!
    [DEBUG][MainThread] Radio toggled
    [DEBUG][MainThread] Radio toggled
    [DEBUG][MainThread] on_generatecutout_button_click--> FlatCAMObj.read_form()
    [WARNING][MainThread] Form fied does not exists: use_buffer_for_union
    [DEBUG][MainThread] new_object()
    [DEBUG][MainThread] Calling object constructor...
    [DEBUG][MainThread] 0.001000 seconds before initialize().
    [DEBUG] Geometry->bounds()
    [DEBUG][MainThread] 0.003000 seconds executing initialize().
    [DEBUG][MainThread] Moving new object back to main thread.
    [DEBUG][MainThread] on_object_created()
    [DEBUG][MainThread] on_object_created --> OC.append()
    [DEBUG][MainThread] append --> OC.get_names()
    [DEBUG][MainThread] FlatCAMGeometry.set_ui()
    [DEBUG][Dummy-1] A new object is available. Should plot it!
    [DEBUG][MainThread] plot --> FlatCAMObj.plot()
    [DEBUG][Dummy-1] Canvas update requested: [0, 0, 0, 0, 0]
    [DEBUG][Dummy-1] Size: (682.66666666666674, 640.0) [px]
    [DEBUG][Dummy-1] Density: (0.044714355468750001, 0.044714355468750008) [units/px]
    [DEBUG][MainThread] on_zoom_fit--> OC.get_bounds()
    [DEBUG] Geometry->bounds()
    [DEBUG] Geometry->bounds()
    [DEBUG][MainThread] 0.199000 seconds adding object and plotting.
    [DEBUG][Dummy-1] Canvas update requested: [0, 0, 0, 0, 0]
    [DEBUG][MainThread] Cache updated the screen!
    [DEBUG][Dummy-1] Size: (682.66666666666674, 640.0) [px]
    [DEBUG][Dummy-1] Density: (0.047614746093749986, 0.047614746093749986) [units/px]
    [DEBUG][MainThread] Cache updated the screen!
    

    The following is the setting of a bounding box margin (default is 0.7mm, I try to change it to 0mm)

    [DEBUG][MainThread] on_generatebb_button_click--> FlatCAMObj.read_form()
    [WARNING][MainThread] Form fied does not exists: use_buffer_for_union
    [DEBUG][MainThread] new_object()
    [DEBUG][MainThread] Calling object constructor...
    [DEBUG][MainThread] 0.001000 seconds before initialize().
    [DEBUG][MainThread] 0.002000 seconds executing initialize().
    [DEBUG][MainThread] Moving new object back to main thread.
    [DEBUG][MainThread] on_object_created()
    [DEBUG][MainThread] on_object_created --> OC.append()
    [DEBUG][MainThread] append --> OC.get_names()
    [DEBUG][MainThread] FlatCAMGeometry.set_ui()
    [DEBUG][Dummy-1] A new object is available. Should plot it!
    [DEBUG][MainThread] plot --> FlatCAMObj.plot()
    [DEBUG][Dummy-1] Canvas update requested: [0, 0, 0, 0, 0]
    [DEBUG][Dummy-1] Size: (682.66666666666674, 640.0) [px]
    [DEBUG][Dummy-1] Density: (0.047614746093749986, 0.047614746093749986) [units/px]
    [DEBUG][MainThread] on_zoom_fit--> OC.get_bounds()
    [DEBUG] Geometry->bounds()
    [DEBUG] Geometry->bounds()
    [DEBUG] Geometry->bounds()
    [DEBUG][Dummy-1] Canvas update requested: [0, 0, 0, 0, 0]
    [DEBUG][MainThread] 0.199000 seconds adding object and plotting.
    [DEBUG][Dummy-1] Size: (682.66666666666674, 640.0) [px]
    [DEBUG][Dummy-1] Density: (0.047614746093749986, 0.047614746093749986) [units/px]
    [DEBUG][MainThread] Cache updated the screen!
    [DEBUG][MainThread] Cache updated the screen!
    
  4. Roberto Lo Giacco reporter

    I just noticed that if I set a value on an object (let's say the # of passes), go back to the list, click on another object and go back to the first one, the value is set back to the previous value. In other words the UI change is not pushed into the backing data model. Like if the two are no more connected.

    I hope that might help a bit.

  5. Juan Pablo Caram repo owner

    @sopak I think one of your latest updates is causing this. I hope I don't have to revert too much. Can you take a look?

  6. Juan Pablo Caram repo owner

    @rlogiacco can you test the latest version. I think I was able to find and fix it.

  7. Roberto Lo Giacco reporter

    I confirm it is now working as expected.

    Since you are already there you might want to consider the small patch I was suggesting for the SVG parsing issue.

  8. Log in to comment