主题
坐标解包 - UnpackPoint
函数简介
将 PackPoint 返回的 int64 一次性解包为 (x, y)。各语言绑定请调用本组 DLL 接口,保证与插件内部 bit 布局一致。
接口名称
UnpackPointDLL调用
cpp
int32_t UnpackPoint(int64_t packed, int32_t* x, int32_t* y);打包格式
位布局与 PackPoint 一致:低 32 位为 x,高 32 位为 y;packed == -1 表示无效(OLA_POINT_INVALID)。
参数说明
| 参数名 | 类型 | 说明 |
|---|---|---|
| packed | 长整数型 | PackPoint 的返回值或回调返回值 |
| x | 整数型指针 | 输出 X,可为 NULL |
| y | 整数型指针 | 输出 Y,可为 NULL |
示例
SDK 调用
cpp
#include "OLAPlugServer.h"
OLAPlugServer ola;
int ret = ola.UnpackPoint(0, "value", "value");csharp
using OLAPlug;
var ola = new OLAPlugServer();
int ret = ola.UnpackPoint(0, "value", "value");python
from OLAPlugServer import OLAPlugServer
ola = OLAPlugServer()
ret = ola.UnpackPoint(0, "value", "value")java
import com.olaplug.OLAPlugServer;
OLAPlugServer ola = new OLAPlugServer();
int ret = ola.UnpackPoint(0, "value", "value");cpp
var ola = com("OlaPlug.OlaSoft")
var ret = ola.UnpackPoint(0, "value", "value")vbscript
Set ola = CreateObject("OlaPlug.OlaSoft")
ret = ola.UnpackPoint(0, "value", "value")text
.局部变量 ola, OLAPlug
ola.创建 ()
ret = ola.UnpackPoint(0, “value”, “value”)aardio
import OLAPlugServer;
var ola = OLAPlugServer();
var ret = ola.UnpackPoint(0, "value", "value");text
变量 ola <类型 = OLAPlugServer>
ola = 新建 OLAPlugServer
整数 ret = ola.UnpackPoint(0, "value", "value")cpp
#include "OLAPlugServer.h"
OLAPlugServer ola;
int32_t ret = ola.UnpackPoint(0, "value", "value");原生 DLL 调用
cpp
UnpackPoint();csharp
UnpackPoint();python
UnpackPoint();返回值
1=有效(packed ≠ -1),0=无效。
注意事项
- 禁止使用 Windows
LOWORD/HIWORD/MAKELPARAM解包,负坐标会错误。 - 仅需单轴坐标时可使用 UnpackPointX / UnpackPointY。
- 本组接口 无 instance 参数,本地直接调用即可。
