Victory! all works now.
Thank you so much for solving this!
@chris, it seems like unexpected behavior to me. Though I try not to use whitespaces when using Radiance so I can’t tell if there is any trick. I was able to re-create the issue - rfluxmtx
does not copy quoted paths if there is a whitespace. E.g., see below:
rfluxmtx -ab 0 -c 100000 “C:\Users\Mikkel\Documents\Ladybug\rfluxmtx test\window_1…uniform.rad” “C:\Users\Mikkel\Documents\Ladybug\rfluxmtx test\rflux_sky.sky” -i “C:\Users\Mikkel\Documents\Ladybug\rfluxmtx test\scene.oct”
rcontrib: fatal - command line error at ‘!oconv -f -i C:\Users\Mikkel\Documents\Ladybug\rfluxmtx’
It cuts off the path at the first whitespace. It seems like to be the case too in the log file that @rastermadre shared. It works perfectly fine if I rename rfluxmtx test
to rfluxmtx_test
.
@mikkel @chris , so this is somewhat of a nonsensical fix, however, if you encapsulate the octree file with three double-quotes, it will work as intended.
For example, in the below case (without quotes), the second command will fail as it has a space in the path:
rfluxmtx -v -I+ -ab 1 -ad 500 -lw 0.002 -n 16 -y 100 - objects/GlazingVmtx.rad -i octrees/room3ph.oct < points.txt > matrices/vmtx/v3.mtx
rfluxmtx -v -I+ -ab 1 -ad 500 -lw 0.002 -n 16 -y 100 - objects/GlazingVmtx.rad -i oc trees/room3ph.oct
In the below case, the second command will still fail as it seems that rfluxmtx
strips off the quotes while passing stuff to oconv
:
rfluxmtx -v -I+ -ab 1 -ad 500 -lw 0.002 -n 16 -y 100 - objects/GlazingVmtx.rad -i "octrees/room3ph.oct" < points.txt > matrices/vmtx/v3.mtx
rfluxmtx -v -I+ -ab 1 -ad 500 -lw 0.002 -n 16 -y 100 - objects/GlazingVmtx.rad -i "oc trees/room3ph.oct" < points.txt > matrices/vmtx/v2.mtx
However, with triple quotes, both commands (with and without spaces in path,) will work:
rfluxmtx -v -I+ -ab 1 -ad 500 -lw 0.002 -n 16 -y 100 - objects/GlazingVmtx.rad -i """octrees/room3ph.oct""" < points.txt > matrices/vmtx/v3.mtx
rfluxmtx -v -I+ -ab 1 -ad 500 -lw 0.002 -n 16 -y 100 - objects/GlazingVmtx.rad -i """oc trees/room3ph.oct"""< points.txt > matrices/vmtx/v2.mtx
getinfo
on both cases, showing successful runs…
Regards,
Sarith
Ah, nice! Thanks for confirming, @mikkel and thanks for that fix, @sarith . That’s a better workaround than the one that I currently implemented so, if there’s ultimately no change in Radiance to accommodate this case, I think I’ll implement the triple quotes in the LBT plugin.
Do you think that the use of triple quotes is what Greg intended to be used for this type of case? If not, then it seems worthwhile to raise the issue on the Radiance forum and see if Greg is willing to make the change. Otherwise, I can just implement the triple quote solution now.
I’m just wary about calling something a bug on the Radiance forum since I know Greg might have been thinking of cases that I am not. And, while I don’t expect you to be able to read Greg’s mind, you probably have a better sense of his intentions than I do.
Done. Well, I posed it as a question rather than a request or a bug-report. So, let’s see what response we get.
Thank you for posting the question, @sarith , and for keeping me in the loop. I’m guessing the fact that Greg labeled it a “Windows-specific quirk” means that he isn’t planning to change anything in Radiance about it in the near term. Does that sound right to you?
If so, I’ll implement the triple-quote solution in the honeybee-radiance core library.
@chris , yes, I think the triple-quote-solution would be the fix as it is unlikely that they will change the code to accommodate Windows (it has been a no-go historically !)
Thanks again, @sarith .
I just implemented the triple-quote solution in the honeybee-radiance library:
That should allow people to use that command in the honeybee-radiance CLI with full paths containing white spaces.
FYI, for anyone else trying to use @sarith 's solution: only the .oct tree should be put in triple quotes. The other file paths should still be in single quotes.
hi sorry im a new hand to this, and i want to ask that how to exactly do this operation to solve the same problem? i cant find where to change the folder path