애드인 작성
애드인은 새 JavaScript API를 표시하는 DLL을 로드하는 플러그인입니다.
FormIt API 다운로드
FormIt을 지원하는 DLL을 빌드하려면 FormIt API가 필요합니다. FormIt API는 Autodesk Developers Network에서 다운로드할 수 있습니다. 다운로드에 액세스하려면 로그인해야 합니다.
로그인하면 소프트웨어 아래에서 FormIt API를 다운로드할 수 있습니다.


애드인은 FormIt API 및 FormIt Modeling Kernel C++ API에 액세스할 수 있습니다.
애드인의 구조는 다음과 같습니다.
// FormIt looks for REGISTERAPIMETHODS to load new JS APIs
REGISTERAPIMETHODS
{
// Declare new namespace for the new JS APIs
REGISTERNAMESPACE("HelloDLL")
// Create a JS API with no arguments
APIMETHOD(HelloDLL, API1, "") {}
// Create a JS API with 1 argument
APIMETHOD(HelloDLL, API2, "arg1") {}
// Create a JS API with 2 argument
APIMETHOD(HelloDLL, API3, "arg1, arg2") {}
...
...
}
인수를 C++ 변수로 가져오려면 SCRIPTCONVERTER를 사용합니다.
// Create a JS API with 2 argument
APIMETHOD(HelloDLL, API3, "arg1, arg2")
{
// NOTE: The arg names above ^^^^ have to match the args in the macros below.
// arg1 expects a bool
SCRIPTCONVERTER(bool, arg1);
// arg2 expects an int
SCRIPTCONVERTER(int, arg2);
return JSON_UNDEFINED;
}
JSON_UNDEFINED 또는 json 객체를 반환할 수 있습니다. to_json을 사용하여 C++ 변수를 json으로 변환합니다.
// Create a JS API with 2 argument
APIMETHOD(HelloDLL, API3, "arg1, arg2")
{
// NOTE: The arg names above ^^^^ have to match the args in the macros below.
// arg1 expects a bool
SCRIPTCONVERTER(bool, arg1);
// arg2 expects an int
SCRIPTCONVERTER(int, arg2);
std::string myValue = "Test";
return to_json(myValue);
}
DLL이 필요한 모든 JS API를 정의하고 나면 플러그인이 로드해야 하는 DLL을 FormIt에 알려야 합니다. 이 작업은 manifest에서 수행됩니다.
"DLLs" : ["PLUGINLOCATION/MyClass.dll", "PLUGINLOCATION/HelloDLL.dll"]
HelloAddIn은 애드인을 만드는 방법을 설명하는 작업 예입니다.
HelloWSMAddIn은 FormIt Modeling Kernel C++ API를 사용하여 애드인을 만드는 방법을 설명하는 작업 예입니다.
Last updated