Search the Community
Showing results for tags 'script'.
-
ajz_searchForVolume DESCRIPTION: The script will select a volume with a name matching the text entered by the user. Useful in complex scenes with a long VoxTree with a deep hierarchy. INSTALLATION: Unpack everything to %USERPROFILE%\Documents\3D-CoatV4\Scripts\ExtraMenuItems and restart 3D Coat. USAGE: You will find the script here: Edit->Search for volume. Enter some text into the text field and press the Search button. 3D Coat will select the volume provided you enter its exact name. Exit the window with the OK button. LIMITATIONS: Yeah, you read right: "Its exact name". And case sensitive too. I couldn't figure out how to walk around this problem without spending too much time on it. An obvious solution would be to use RegEx, but I couldn't find any information on whether AngelScript supports it or not. The UI available for the script engine doesn't allow for implementation of dynamic search so you will need to confirm your input by leaving the text field and clicking the Search button. If your VoxTree is very long, then you might need to scroll the VoxTree window to see it. It's not possible to script in automatic scrolling. If several volumes share the same name, the uppermost will be selected. I could add a button that would select the next volume of the same name, but it would have to iterate through the VoxTree and this is currently very slow in 3D Coat. Plus it's a rare (and a bad) thing to have multiple objects with the same name, so I decided not to do it. ajz_searchForVolume.zip
-
Hello, I am new to 3D-Coat and want to create some scripts to execute some basic operations which I normally would have to execute manually. What I try to do is: -- i) Import Object(s) from STL ii) Convert "Surface" to "Voxel" with a distinct resolution (depends on object) iii) Subtract Voxel-Object(s) from each other iv) Export result to STL What I have done so far is something like this: void main(){ // next command is optional, just to keep control of execution in modal message boxes (see description of ModalDialogCallback below), if you are new you may delete or ignore next line //SetModalDialogCallback("ModalDialogCallback"); if(ModalDialogOkCancel("Create new project and import files?"," ")) { SetModalDialogCallback("ModalDialogCallbackDontSave"); cmd("$CLEARSCENE"); ToRoom("Sculpt"); string wMeshOne, wMeshTwo; if ( OpenDialog("*.stl",wMeshOne) ) { SetFileForFileDialogs(wMeshOne); cmd("$ImportForVoxelizing"); //cmd("$MERGEOBJ"); SetModalDialogCallback("ModalDialogCallbackKeepScale"); SetBoolField("Import w/o Voxelization",true); //SetBoolField("$RegularGizmo::MoveOnlyGizmo",true); apply(); cmd("$[Page4]Smooth");//select smooth just for testing } } } void ModalDialogCallbackDontSave() { cmd("$DialogButton#2"); } void ModalDialogCallbackKeepScale() { cmd("Yes");// or "$DialogButton#2" } Finally my concrete questions: * Which command should be used to import STLs as Surfaces? * How to programmatically convert them to Voxel with a certain resolution? * How to access the converted Voxel-objects and subtract them from each other * How to export the result to STL? A lot of questions, I know - I don't expect a ready-to-run script just some hints into the right direction. Regards, Reiner
-
ajz_copyToSculptRoom WHAT IT DOES?: The script will copy mesh from Paint Room to Sculpt Room. HOW DO I USE IT?: If you have a mesh in the Paint Room that you want to import to Sculpt Room, select Scripts→Copy Object to Sculpt Room. This will automatically switch rooms to Paint Room and open Export Model dialog window, where you can choose which mesh resolution you want to export. You may want not to export textures as they will not be imported to Sculpt Room anyway. After clicking OK, you'll be taken to Sculpt Room with a dialog of an Import Tool opened and the model loaded up. Choose your import options and Apply or press 'Enter'. There are some customisable options that you can edit. See the ajz_copyToSculptRoom.txt file for more info. I don't recommend changing them, unless it is necessary. INSTALLATION: 1. Unpack both files to %USERPROFILE%/Documents/Scripts/ExtraMenuItems/.2. Start 3D Coat. 3. You will find the script in Scripts→Copy Object to Sculpt Room. KNOWN PROBLEMS: The first time you start the script, it might happen that it won't load the mesh into Import Tool. If this happens, launch the script again. After this, you shouldn't have any more problems with it. FIXED The script was tested under Windows operating system only. Linux and Mac users should probably change path delimiter character inside TEMP_PATH string (See the ajz_copyToSculptRoom.txt file for more info) The script might not work properly on some earlier 3D Coat versions. If you notice that it doesn't automatically enter the Import Tool (Merge Tool in older versions), open the script file and change the: cmd("$[Page4]Import"); line to: cmd("$[Page4]Merge"); You probably will need to do it if you're using the latest stable version. DOWNLOAD: ajz_copyToSculptRoom_v1.01.zip
-
ajz_roomSwitcher DESCRIPTION: This is a bunch of very simple scripts (I'm not sure if I can even call them so as they're merely six-liners) that will allow you to use keyboard shortcuts to switch between all 3D Coat rooms. INSTALLATION: Unpack all files to %USERPROFILE%\Documents\3D-CoatV4\Scripts\ExtraMenuItems and restart 3D Coat. USAGE:You'll find six new items in the Scripts menu: Go to paint room, Go to tweak room, etc. Just assign them some hotkeys with the <END> key and you're set. NOTE: If you happen to experience strange behaviour when switching rooms with hotkeys, like 3D Coat returning to room you just switched from, then edit each txt file and increase render steps (found in line 11 in each file) to something higher, like 20 or 100. I set the default to 10 as this was sufficient on my setup. ajz_roomSwitcher.zip
-
Hi, I was looking through the documentation but I couldn't find any method which returns the coordinates when one clicks on an object. Is there any way to get that? Thank you
-
ajz_visibilityGroups DESCRIPTION: The script will store/restore visibility and ghosting states of all volumes in the VoxTree. INSTALLATION: UnTAR everything to %USERPROFILE%\Documents\3D-CoatV4\Scripts\ExtraMenuItems and restart 3D Coat. USAGE: You will find the script here: View->Load/Save VoxTree visibility states. The main UI works similarly to ajz_transferRenderSettings. You can store or load visibility/ghosting states temporarily to/from memory or save/load it to/from a file. It's handy when dealing with complex VoxTrees. LIMITATIONS: Because of how traversing (probably not the best way to describe the thing) through VoxTree works in 3DC scripting, it will expand all tree branches on the VoxTree. If you store VoxTree state, delete or rename some volumes and load the state after such action, it will restore visibility/ghosting states to layers that it recognises by name. Others will be left as they are. All mismatching layers are reported in the log or will be displayed in a GUI dialog window if AJZ_VGRPS_SHOW_MISSING_VOLUMES_DIALOG constant is set to true. ajz_visibilityGroups.tar
-
ajz_voxTreeShaders2csv I wrote the script for my own use several weeks ago, but I think there's nothing wrong with sharing it. Perhaps someone will find it useful. DESCRIPTION: The script iterates through the whole VoxTree, collecting names and bound shaders of each visible layer. It then writes this information to a CSV file which can be opened by a spreadsheet application of one's choice. The script might be useful if you have a very complex scene with dozens of objects and shaders and you want to inspect which objects use which shaders. It can also be helpful when planning things in the retopo room. If you forget where you saved your file, check the script execution log: Scripts->View execution log. INSTALLATION: Copy ajz_voxTreeShaders2csv.txt and ajz_voxTreeShaders2csv.xml to %USERPROFILE%\Documents\3D-CoatV4\Scripts\ExtraMenuItems and restart 3D Coat. The script will be accessible through File->Export menu. CONFIGURATION: There's more detailed information on how to configure the script in the ajz_voxTreeShaders2csv.txt file. Please read it before using the script. Drop me a word if you have any questions, ideas or find a bug. Thanks. ajz_voxTreeShaders2csv-1.1.zip
-
Transfer render settings v1.3 Description: The script allows to temporarily store and then restore render settings of a scene. It can be used to transfer them between different scene files or restore those settings after they're reset by merging 3b files. Settings will be kept in memory for the duration of 3D Coat's session or until overwritten by storing new render settings. With this new version you'll also be able to save and load your render settings to and from the disk. Installation: The following actions will place the Transfer render settings script in the Scripts menu. 3D Coat v4.0.16A or newer Windows Vista/7/8 Extract and copy ajz_tRenderSettings.txt and ajz_tRenderSettings.xml files to the following path: %USERPROFILE%\Documents\3D-CoatV4\Scripts\ExtraMenuItems\ Mac/Linux Extract ajz_tRenderSettings.txt file to a temporary directory and run it with Scripts->Run script command from inside 3D Coat. 3D Coat v4.0.16 Windows Vista/7/8 Extract and copy ajz_tRenderSettings_legacy.txt and ajz_tRenderSettings_legacy.xml files to the following path: %USERPROFILE%\Documents\3D-CoatV4\Scripts\ExtraMenuItems\ Mac/Linux Extract ajz_tRenderSettings_legacy.txt file to a temporary directory and run it with Scripts->Run script command from inside 3D Coat. Older versions of 3D Coat have buggy InstallToMenu function, so it won't be added to Scripts menu. 3D Coat v4.0.15A and older Windows Vista/7/8, Mac, Linux Extract the ajz_tRenderSettings_legacy.txt file to a temporary directory and run it with Scripts->Run script. This will add the script to the recent scripts list found in the Scripts menu. This way, as long the script remains on that list, you'll be able to bind a shortcut key to it or simply access the script by clicking it. Changelog: Version 1.3 - Hopefully resolved the bug with loading lights array that is longer than the current one. Altered some Step(n) values. The script might be a lil' bit slower, but should work. If you're restoring or loading render settings wait for the floating message before clicking OK. The settings are done loading ONLY after the message appears. Version 1.2 - Introduced new functionality: save and load files to and from the disk. - Completely rewrote the code. - Applied GNU GPL license. Version 1.1 - The script will now store all render settings in exception of: * view size, * render size, * render result (path). Version 1.0 - Store/restore most used render settings: * general render settings (lightness, AO percentage, DOF degree, DOF plane position); * complete lights array; * store alpha channel, antialiasing, 32-bit rendering and save lossless images. ------------------------------------ Latest version: Version 1.3 http://3d-coat.com/forum/index.php?showtopic=15797&p=109950
- 6 replies
-
- 1
-
- render settings
- script
-
(and 1 more)
Tagged with:
-
ajz_copyToRetopoRoom WHAT IT DOES?: The script will copy an object from Paint Room to Retopo Room. HOW DO I USE IT?: If you have an object in the Paint Room that you want to import to Retopo Room, select Scripts->Copy Object to Retopo Room. This will automatically switch rooms to Paint Room and open export options dialog where you can choose which mesh resolution you want to export. After clicking OK, you'll be taken to Retopo Room with the object already loaded up. Accept the import by pressing "Enter" key or hit "Esc" to cancel. There are some customisable options that you can edit. See the ajz_copyToRetopoRoom.txt file for more info. I don't recommend changing them, unless it is necessary. INSTALLATION: 1. Unpack both files to %USERPROFILE%/Documents/Scripts/ExtraMenuItems/. 2. Start 3D Coat. 3. You will find the script in Scripts→Copy Object to Retopo Room. KNOWN PROBLEMS: The script was tested under Windows operating system only. Linux and Mac users should probably change path delimiter character inside TEMP_PATH string (See the ajz_copyToSculptRoom.txt file for more info) DOWNLOAD: ajz_copyToRetopoRoom.zip
-
Source Nuitka is a Python compiler. It's fully compatible with Python 2.6, 2.7, 3.2 and 3.3. You feed it your Python app, it does a lot of clever things, and spits out an executable or extension module. Free license (Apache) Right now Nuitka is a good replacement for the Python interpreter and compiles every construct that CPython 2.6, 2.7, 3.2 and 3.3 offer. It translates the Python into a C++ program that then uses "libpython" to execute in the same way as CPython does, in a very compatible way.
-
ajz_multipleResPlus DESCRIPTION: A very simple script that will perform n-Res+ operations on selected volume. INSTALLATION: UnTAR everything (preferably using 7-Zip) to %USERPROFILE%\Documents\3D-CoatV4\Scripts\ExtraMenuItems and restart 3D Coat. USAGE: You will find the script in: Voxels->Multiple Res+. Be very cautious when using high values here. Usually, you won't need to get above 4-5. The maximum Res+ steps is limited to 10, but if you're very brave or own Das Übermaschine, you can change it to something bigger. Just search for MAX_STEPS and bump it up. System unresponsiveness guaranteed. ajz_multipleResPlus.tar
-
ajz_VoxTreeMergeDown DESCRIPTION: The script is similar to Photoshop's Merge Down command. It will merge currently selected VoxTree layer with the first visible one. It will not merge layers if one of them is cached. Also, be sure to read the warning section below. INSTALLATION: UnTAR everything to %USERPROFILE%\Documents\3D-CoatV4\Scripts\ExtraMenuItems and restart 3D Coat. USAGE: You will find the script here: Voxels->Merge Down. Select a layer and run the script (I like to keep it under CTRL+E). You can customise it to hide, delete or leave alone the source layer after operation is completed (see the USER CUSTOMISABLE OPTIONS section within the ajz_VoxTreeMergeDown.txt file for more details on how to do it). Also remember that if a parent layer is hidden, then all of its children are treated as hidden too. WARNING: DO NOT attempt to merge down a parent with any of its children if ACTION is set to 2 ("remove the source layer after merge down operation") because this will remove not only the parent itself, but all of its children as well. Currently it's not possible to determine via scripting whether a layer is a parent and has children or not. And this is required to solve the problem. There's also a bug, but it's on 3D Coat's side (currently it's 4.1.08B) because I can reproduce it with Merge To command. If you cache the target layer, uncache it, select the source layer and merge it to target layer, then the merge operation won't happen. You'll need to do the operation twice or do something to VoxTree, like add a new layer or reorder the tree. Just keep this in mind or you might end up loosing the source volume if ACTION is set to 2. ajz_VoxTreeMergeDown_v1.00.tar
-
hi all, just a couple of simple yet useful batches.. Paint High Low Voxel batch // Adds two fill layers, first, with foreground color as "Less in cavity", second, with background color as "More in cavity". Smooth all volumes // Apply "Smooth all" to each volume in tree that is NOT in surface mode. have fun PaintHighLow.script.txt SmoothAllVolumes.script.txt