Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
On 08/08/2016 at 14:03, xxxxxxxx wrote:
Hello all, I have a script I am trying to make to set a specific texture path in the system preferences. If you type in
Files[c4d.PREF_TEXPATH_PATH1]="some/file/path"
into the console it works no problem. The problem I am trying to figure out is how do you get this to work in a python Script Manager. I know somehow I need to get the Files BaseList2D I just am not sure how and can't seem to find any good documentation on this. If anyone knows I would be very appreciative. Thank you very much for all the help.
On 08/08/2016 at 21:13, xxxxxxxx wrote:
something like this
import c4d def main() : FilesTool_ID=465001626 FilesTool=c4d.plugins.FindPlugin(FilesTool_ID, c4d.PLUGINTYPE_PREFS) print "PATH1: ", FilesTool[c4d.PREF_TEXPATH_PATH1] FilesTool[c4d.PREF_TEXPATH_PATH2] = r"YOU\PATH" print "PATH2: ", FilesTool[c4d.PREF_TEXPATH_PATH2] if __name__=='__main__': main()
On 09/08/2016 at 03:26, xxxxxxxx wrote:
Hi,
anion's answer is correct. It just misses a c4d.EventAdd() in the end to make the change show up immediately.
On 09/08/2016 at 05:28, xxxxxxxx wrote:
Originally posted by xxxxxxxx Hi, anion's answer is correct. It just misses a c4d.EventAdd() in the end to make the change show up immediately.
Originally posted by xxxxxxxx
Yes I know, thank you
On 09/08/2016 at 12:26, xxxxxxxx wrote:
Beautiful! Thank you guys so much for the help as always. Is it possible to explain how you knew/found the Files plugin ID? And also how you knew it was a plugin? Just curious for my further understanding. Thank you!
On 11/08/2016 at 01:58, xxxxxxxx wrote:
Hi Andrez,
usually we suggest to look into the resource headers (located in your C4D install folder under resource/modules). But this won't work for preferences pages. In this case you can use something like this:
plist = c4d.plugins.FilterPluginList(c4d.PLUGINTYPE_PREFS, True) for p in plist: print p.GetName(), p.GetID()
Instead of looking through the entire list manually, you could further refine this. By dragging a parameter from the Files page into the console command line, you get for example:
Files[c4d.PREF_FILE_RECENT]
If you now do a:
Files.GetName()
You'll get the name you are looking for in the above list (note that the name for Im-/Exporters differs slightly as either " Import" or " Export" is appended to the name).
So, this was the generic answer...
To demonstrate my blindness, this is what I should have answered in the first place (sorry!) : You can simply use GetGlobalTexturePath() and SetGlobalTexturePath()
On 14/08/2016 at 09:53, xxxxxxxx wrote:
Awesome thanks for the detailed response. I will certainly use that knowledge in the future even though there was an easier way the whole time hehe.
On 21/08/2016 at 09:19, xxxxxxxx wrote:
Originally posted by xxxxxxxx something like this import c4d def main() : FilesTool_ID=465001626 FilesTool=c4d.plugins.FindPlugin(FilesTool_ID, c4d.PLUGINTYPE_PREFS) print "PATH1: ", FilesTool[c4d.PREF_TEXPATH_PATH1] FilesTool[c4d.PREF_TEXPATH_PATH2] = r"YOU\PATH" print "PATH2: ", FilesTool[c4d.PREF_TEXPATH_PATH2] if __name__=='__main__': main()
This helped me solve the same problem I have with OP. Thanks Anion!