discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Should have an option to ask to render when pressing F6

AK
Amarjeet Kapoor
Wed, Mar 15, 2017 4:22 AM

On 4 March 2017 at 15:23, dnivoG dnivogamrahs@gmail.com wrote:

Hi, I have just started with OpenSCAD and was looking into this issue with
Amarjeet. After playing around with the code and following along with what
happens upon pressing F6 and the cancel button, I have discovered (or just
implied) that although the slot corresponding to the cancel button on the
progress widget only sets true, the value of bool wascancelled; it is
somehow able to stop proceedings before the function:
evaluator.evaluateGeometry() finishes doing its job.
Once this function actually finishes, then the cancel button does nothing it
seems even on consecutive presses of F6. But if on the first press of F6,
the cancel button is pressed before the evaluator.evaluateGeometry()
function returns from its call, then the process is somehow stopped printing
in accordance to the following catch block in the CGALWorker::work()
function:

catch (const ProgressCancelExcetion &e) {
PRINT("Rendering Cancelled.");
}

My enquiry is that how is this exception generated by a simple assignment of
true to the wascancelled variable in the progressWidget object.

I also intent to raise the same query. It is crucial from our point of
view as we are kind of stuck at this point.

--
Amarjeet Singh
https://amarjeetkapoor1.wordpress.com
https://github.com/amarjeetkapoor1
https://bitbucket.org/amarjeetkapoor

"The journey of a thousand commit begins with a single init"

On 4 March 2017 at 15:23, dnivoG <dnivogamrahs@gmail.com> wrote: > Hi, I have just started with OpenSCAD and was looking into this issue with > Amarjeet. After playing around with the code and following along with what > happens upon pressing F6 and the cancel button, I have discovered (or just > implied) that although the slot corresponding to the cancel button on the > progress widget only sets true, the value of bool wascancelled; it is > somehow able to stop proceedings before the function: > evaluator.evaluateGeometry() finishes doing its job. > Once this function actually finishes, then the cancel button does nothing it > seems even on consecutive presses of F6. But if on the first press of F6, > the cancel button is pressed before the evaluator.evaluateGeometry() > function returns from its call, then the process is somehow stopped printing > in accordance to the following catch block in the CGALWorker::work() > function: > > catch (const ProgressCancelExcetion &e) { > PRINT("Rendering Cancelled."); > } > > My enquiry is that how is this exception generated by a simple assignment of > true to the wascancelled variable in the progressWidget object. I also intent to raise the same query. It is crucial from our point of view as we are kind of stuck at this point. -- Amarjeet Singh https://amarjeetkapoor1.wordpress.com https://github.com/amarjeetkapoor1 https://bitbucket.org/amarjeetkapoor "The journey of a thousand commit begins with a single init"
M
MichaelAtOz
Wed, Mar 15, 2017 4:52 AM

Seethe Throw in
https://github.com/openscad/openscad/blob/4af51a7443e5f6e8fb234beadc8128261854ae68/src/mainwin.cc#L764


Admin - PM me if you need anything, or if I've done something stupid...

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”  Fight it! http://www.ourfairdeal.org/  time is running out!

View this message in context: http://forum.openscad.org/Should-have-an-option-to-ask-to-render-when-pressing-F6-tp20486p20911.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Seethe Throw in https://github.com/openscad/openscad/blob/4af51a7443e5f6e8fb234beadc8128261854ae68/src/mainwin.cc#L764 ----- Admin - PM me if you need anything, or if I've done something stupid... Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above. The TPP is no simple “trade agreement.” Fight it! http://www.ourfairdeal.org/ time is running out! -- View this message in context: http://forum.openscad.org/Should-have-an-option-to-ask-to-render-when-pressing-F6-tp20486p20911.html Sent from the OpenSCAD mailing list archive at Nabble.com.
AK
Amarjeet Kapoor
Fri, Mar 17, 2017 6:23 AM

On 15 March 2017 at 10:22, MichaelAtOz oz.at.michael@gmail.com wrote:

Seethe Throw in

Thanks.

Like in case of CSG, we have also used the node.progress_report() function
in GeometryEvaluator::visit (
https://github.com/openscad/openscad/blob/master/src/GeometryEvaluator.cc#L524
) function that essentially raises the exception upon the press of the
cancel button.

--
Amarjeet Singh
https://amarjeetkapoor1.wordpress.com
https://github.com/amarjeetkapoor1
https://bitbucket.org/amarjeetkapoor

"The journey of a thousand commit begins with a single init"

--

Amarjeet Singh
https://amarjeetkapoor1.wordpress.com
https://github.com/amarjeetkapoor1
https://bitbucket.org/amarjeetkapoor

"The journey of a thousand commit begins with a single init"

On 15 March 2017 at 10:22, MichaelAtOz <oz.at.michael@gmail.com> wrote: > Seethe Throw in > https://github.com/openscad/openscad/blob/4af51a7443e5f6e8fb234beadc8128261854ae68/src/mainwin.cc#L764 > Thanks. Like in case of CSG, we have also used the node.progress_report() function in GeometryEvaluator::visit ( https://github.com/openscad/openscad/blob/master/src/GeometryEvaluator.cc#L524 ) function that essentially raises the exception upon the press of the cancel button. -- Amarjeet Singh https://amarjeetkapoor1.wordpress.com https://github.com/amarjeetkapoor1 https://bitbucket.org/amarjeetkapoor "The journey of a thousand commit begins with a single init" -- Amarjeet Singh https://amarjeetkapoor1.wordpress.com https://github.com/amarjeetkapoor1 https://bitbucket.org/amarjeetkapoor "The journey of a thousand commit begins with a single init"