Dev talk:Doc/Coding Guides Tutorials

提供: wiki
移動先: 案内検索

Hey,

This is Double_Dose. Using the api has failed me, so I've got to get a deeper understanding of the math of bone rotations.

I think it would help me tremendously to have some detailed specifications of the code, but looks like I'm going to have to write the specifications myself. If I do manage, I'd like to add those detailed specifications of each function to the blender dev wiki. In the future, test cases and links to these specifications could be added, helping with testing and getting the versions of blender churned out faster. List headings would describe simple activities you can do with Blender, general event names like "pressing tab key to go to edit mode," "rotating a bone," "translating an object," etc. The headings, would list all specification links to functions involved in the activity. This would be so you could get a quick yet detailed understanding of how blender works, without sorting through and mentally processing code... totally speeding up development according to the principles of software engineering.

A specification format without instructions could be:

Function name: Header: Function location: Break condition: Purpose: Dependencies: Natural language version:

Format with instructions:

Function name: Header (make sure to include types and parameters): int main(string example): Function location (Package path ---- file path (name included) ---- line #): Break condition (what caused program control to go to this function): Purpose(In a sentence or two, what does the function do or help, or how does it fit in to the larger process): Dependencies: Natural language version (In English or another human language, what does the code do):

An specific case would look something like:

Function name: exampleFunc Header: int exampleFunc(string example) Function location: examplePack/file/ ---- C:/Blender/source/example/exampleFile.cpp Break condition: mouse was moved into 3d window Purpose: compare mouse click location to an object location for... Dependencies: must be in edit mode; mouseVar global must be set to...; ... Natural language version: Takes the location of the mouse pointer. Stores it for later use if a left click occurs. ...

I just wonder if I would be violating the copyright of the blender code by posting this here.

Are there alternative locations to put this information?

Would anyone be interested in helping?


Later,

Double_Dose