SViewBase for iOS 提供三维模型基本的浏览、模型属性操作、基本三维对象操作、动画播放、测量、批注等功能的实现接口,可实现基本的 三维模型展示功能,以便于用户个性化定制属于自己的产品。文档主要介绍了SViewBase控件提供的接口说明。
功能模块 接口 所属类 描述 备注
参数配置 + (NSString*)getSViewVersion; SParameters SViewBase版本号
+ (NSString*)getM3DVersion; M3D版本号
+ (NSString*)getSVLLibVersion; SVLLib版本号
+ (void)setGLESVersion:(int) version; 设置GLES渲染器版本
+ (int)getGLESVersion; 得到GLES版本号
+ (void)setAppWorkPath:(NSString *)appWorkPath; 设置app工作路径
+ (NSString *)getAppWorkPath; 得到app工作路径
- (void) setParameterString:(NSString*)key value:(NSString*)value; 设置参数(NSString)
- (NSString*) getParameterString:(NSString*)key; 获取参数(NSString)
- (void) setParameterInt:(NSString*)key value:(int)value; 设置参数(int)
- (int) getParameterInt:(NSString*)key; 获取参数(int)
- (void) setParameterBool:(NSString*)key value:(BOOL)value; 设置参数(BOOL)
- (BOOL) getParameterBool:(NSString*)key; 获取参数(BOOL)
OtherParameter 其他参数
文件操作 - (BOOL) open:(NSString*)filePath asyn:(BOOL)asyn percent:(FileReadPercentBlock)percentBlock finish:(FinishOpenBlock)finishBlcok; SViewBase 打开文件
- (void) cancelOpen; 取消打开
- (void)close; 关闭文件
- (void)save:(NSString*) tarFilePath; 保存文件
- (NSData*) getFile:(NSString*)fileName; SVLXManager 获取数据
- (BOOL) addFile:(NSString*)filePath; 添加文件
- (BOOL) removeFile:(NSString*)fileName; 删除文件
基类 基类
基本操作 - (void)setPickShapeType:(SSHAPETYPE)type; SViewBase 设置过滤类型
- (SSHAPETYPE)getPickShapeType; 获取过滤类型
- (bool) endContinueRotate; 结束持续旋转
- (void)startAutoRotate:(float)speed; 自动旋转
- (void)stopAutoRotate; 停止自动旋转
-(void)restoreRotationCenter; 恢复默认旋转中心
- (void)setOrbitMode:(SVIEW_CONSTRAINT_MODE)orbitMode; 设置观察模式
- (void) setDrawMode:(DrawModeType)mode; 设置着色模式
- (DrawModeType) getDrawMode; 获取着色模式
-(void) setPerspective:(PerspectiveDirection) direction; 设置视图方向
- (NSArray*)getAllSrcFiles; 获取当前模型相关资源路径
-(void)setDefaultView:(int)viewType; 设置视图默认方向
- (void)requestDraw; SViewer 刷新
- (void)restoreView; 复位
- (void)setUseStereoMode:(BOOL)state; 设置立体模式(3D显示)
- (BOOL)getStereoModeState; 获取是否使用立体模式
- (void) setCameraProjectionType:(int)projectionType; 设置投影模式
- (int) getCameraProjectionType; 获取投影类型
- (SBoudingBox*) getTotalWorldBoudingBox; 获取世界包围盒
- (SVector3)getCameraPosition; 获取相机位置
- (void)setCameraPosition:(SVector3)position; 设置相机位置
- (NSString *)getCameraState; 获取相机状态
- (void)setCameraState:(NSString *)state; 设置相机状态
- (BOOL)getGlobalEffect; 全局效果
页面设置 - (void)setGLViewRefresh:(BOOL)isRefresh; SViewBase 开始/暂停页面刷新
- (void) setBackgroundColor:(SColor*)startColor endColor:(SColor*)endColor; 设置背景色
- (void) getBackgroundColor:(SColor*)startColor endColor:(SColor*)endColor; 获取背景色
-(void)setBackgroundImage:(NSString*)imagePath; 设置背景图片
- (void) setBackgroundType:(BackgroundType)type; 设置背景类型
- (BackgroundType) getBackgroundType; 获取背景类型
- (BOOL) interBackgroundState; 内部设置背景
- (UIImage*) takeSnapshot;
- (UIImage*) takeSnapshot:(CGSize)newSize;
截图
手势操作设置 - (void)setGestureMode:(SVIEWBASEGESTUREMODE_MASK)type SViewBase 设置手势操作类型
- (SVIEWBASEGESTUREMODE_MASK) getGestureMode 获取当前手势类型
- (void)defaultGestureMode 恢复正常手势操作
- (void)onClicked:(CGPoint)point sviewBase:(SViewBase *)sviewBase; 处理单击操作
- (void)onDoubleClicked:(CGPoint)point sviewBase:(SViewBase *)sviewBase 处理双击操作
- (BOOL)onTouchEvent:(SMotionEvent*)event sviewBase:(SViewBase *)sviewBase 处理点击操作
模型 - (void) move:(SShape*)shape position:(SVector2)screentPnt; SViewBase 移动到某位置-屏幕(动画效果)
- (void) restore:(SShape*)shape type:(RestoreType)type; 复位某种属性(动画效果)
- (void)hideSelected; 隐藏选择模型(协同录制)
- (void)showSelected; 显示隐藏模型(协同录制)
- (void)restoreSelectedModel 复位选中模型(协同录制)
- (void)exchangModelVisible 模型显隐交换
- (void)getAllInitPosModel:(int*) initedModelCount allModelCount:(int*) allModelCount; 获取目前复位的模型数量
- (void)resetAllModelRandomColor 重设模型的随机色
- (SShape*)getShapeBySVLPath:(NSString*)path; SViewer 根据SVL路径获取Shape
- (SShape*)getShapeByM3DPath:(NSString*)path; 根据M3D路径获取Shape
- (NSString*)getSVLPathByShape:(SModel*)smodel; 根据Shape获取SVL路径
- (NSString*)getM3DPathByShape:(SModel*)smodel; 根据Shape获取M3D路径
- (SShape*)getShape:(int)shapeId; 获取
- (void)removeShape:(int)shapeID; 删除
- (int) pickShapeX:(float)x Y:(float)y Type:(int)shapeType GeoType:(int)geoType; 拾取
- (int) selectShapeX:(float)x Y:(float)y Type:(int)shapeType GeoType:(int)geoType; 选择
- (SModel*)getRootModel; 获取根模型
- (void)setAllPMISVisible:(BOOL)isVisible; 设置所有PMI的可见性
- (void)setAllPMIColor:(SColor*)color; 设置所有PMI的颜色
- (void)setPMISVisible:(BOOL)isVisible forID:(int)pmiID; 根据ID设置PMI的可见性
- (void)setPMISVisible:(BOOL)isVisible forModel:(SModel*)sModel; 设置模型PMI的可见性
- (void)focusModel:(SModel* )smodel; 聚焦模型
模型属性 - (SSHAPETYPE)getType;
- (void)setType:(SSHAPETYPE)type;
SShape 类型(get/set)
- (float)getAlpha;
- (void)setAlpha:(float)alpha;
透明度(get/set)
- (float)getInstanceAlpha;
- (void)setInstanceAlpha:(float)alpha;
实例透明度(get/set)
- (void)resetAlpha; 重置透明度
- (void)restore; 复位
- (SColor*)getColor;
- (void)setColor:(SColor*)color;
颜色(get/set)
- (SColor*)getInstanceColor;
- (void)setInstanceColor:(SColor *)color;
实例颜色(get/set)
- (void)resetColor; 重置颜色
- (BOOL)isSelected;
- (void)setSelected:(BOOL)select;
选中状态(get/set)
- (BOOL)isVisible;
- (void)setVisible:(BOOL)visible;
可见性(get/set)
- (int)getID;
- (void)setID:(int) value;
ID(get/set)
- (NSString *)getName;
- (void)setName:(NSString *)name;
名称(get/set)
- (SMaterial*) getMaterial;
- (void) setMaterial:(SMaterial*) material;
材质(get/set)
- (void)addSubModel:(SModel *)model; SModel 添加子模型
- (void)removeSubModel:(SModel *) model; 删除子模型
- (NSArray*)getSubModels; 获取所有子模型
- (int)getSubModelCount; 获取子模型数
- (int)getInstanceCount; 获取实例数
- (int)getVertexCount:(int) level; 获取顶点数
- (SModel*)getParent;
- (void)setParent:(SModel*) model;
父模型(get/set)
- (NSString *)getProperty:(NSString *)keyString; 获取某种属性
- (NSString *)getProperties; 获取属性
- (void)setProperty:(NSString *)key value:(NSString *)value; 设置属性(添加/修改)
- (void)clearProperties; 清空属性
- (void)clear; 清空模型
- (int)getProtoTypeId; 原型ID(get)
- (BOOL)isAssembly; 是否为装配
- (SBoudingBox*)getBoundingBox; 包围盒(get)
- (SVector3)getWorldBoundingBoxCenter; 包围盒中心(get)
- (SVector3)getWorldPosition;
- (void)setWorldPosition:(SVector3)position;
位置(get/set)
选择器 - (void)add:(SShape*) shape; SSelector 添加
- (void)remove:(SShape*) shape; 删除
- (void)clear; 清空
- (SShape*)get; 获取
- (NSArray*)getAll; 获取全部
- (int)count; 数量
- (bool)exist:(SShape*)shape; 是否存在
装配操作 - (BOOL)insert:(NSString*)filePath To:(SModel*)parentModel RetModel:(SModel*)retModel; SBomManager 插入
- (BOOL)copy:(SModel *)model To:(SModel*)parentModel NewModel:(SModel*)newModel; 复制
- (BOOL)move:(SModel*)model To:(SModel*)parentModel; 移动
- (BOOL)draggerMode:(int)mode; 移动模式
- (void)draggerAxis:(int)axis; 移动方向
- (BOOL)reName:(NSString*)name Model:(SModel*)model; 重命名
- (BOOL)remove:(SModel *) model; 删除
- (SModel*)replace:(SModel*)model filePath:(NSString*)filePath; 替换
视图 - (SModelView*) create:(SModelViewType)type withName:(NSString*)name withStatus:(ModelViewStatus)status; SModelViews 创建
- (bool) remove:(SModelView*)modelView; 删除
- (void) clear; 清空
- (void) save:(NSString*)svlxPath 保存
- (SModelView *) getModelViewByID:(int)viewID; 根据ID获取
- (SModelView *) getModelViewByName:(NSString *)name; 根据名称获取
- (NSArray *) getAllModelView; 获取所有视图
- (void) clearDefaultModelView; 清除默认视图
- (void) showView:(SModelView*)modelView withAni:(BOOL)bAni; 显示视图
- (void) updateModelViewByCurrentScene:(SModelView *)modelView; 更新当前场景
- (void) showNote:(SModelView *)modelView; 显示关联note
- (void) hideNote:(SModelView *)modelView; 隐藏关联note
剖切 - (void) clip:(ClipParameter)parameter; SViewBase 设置剖切 基于坐标平面创建剖面,可调节剖切深度
- (void) multiClip:(MultiClipParameter)parameter; 多面剖
- (void) cancelClip; 取消剖切
爆炸 - (BOOL) explosive:(ExplosiveParameter)parameter; SViewBase 浏览爆炸图,调节爆炸间距
- (BOOL) cancelExplosive; 取消爆炸
- (void) setExplosiveLevel:(int)level; 设置爆炸的级别
- (int) getExplosiveLevel; 获取爆炸的级别
动画 isLoop SAnimationPlayer 循环
singlePlay 单步
useCamera 漫游
percent 进度
speed 速度
- (SAnimationTask*) getCurrentTask; 当前任务
- (bool) play; 播放
- (void) playAll; 播放全部
- (void) playProcess; 播放过程
- (void) playStep; 播放步骤
- (void) playPre; 上一步
- (void) playNext; 下一步
- (void) playNextAll; 播放剩余
- (void) playFrom:(int)start to:(int)end; 播放其中一部分
- (bool) pause; 暂停
- (bool) stop; 停止
- (bool) isPlaying; 是否正在播放
- (BOOL) isSingleAnimation; 是否是单段动画
- (BOOL) isAnimation; 是否有动画
批注 finishAnnotation SAnnotations 完成回调
- (void) doAnnotationCommand:(int)type; 执行命令
- (void) closeAnnotationCommand; 关闭命令
- (NSArray*)getAll; 获取所有对象
- (void)clear; 清空
- (void)add:(SAnnotation*)annotation; 添加
- (void)remove:(SAnnotation*)annotation; 删除
currentAnnotationType 当前批注类型
测量 finishMeasure SMeasures 执行命令
- (void) doMeasureCommand:(int)type; 执行命令
- (void) closeMeasureCommand; 关闭命令
- (NSArray*)getAll; 获取所有对象
- (void)clear; 清空
- (void)add:(SMeasure*)measure; 添加
- (void)remove:(SMeasure*)measure; 删除
currentMeasureType 当前测量类型
热点 - (SHotSpot*)create:(CGPoint)point; SHotSpots 创建
- (void) remove:(SHotSpot*)hotSpot; 删除
- (void) createImage:(SHotSpot*)hotSpot; 创建图标
- (NSArray *)getHotSpotsByName:(NSString *)pName; 根据名称获取热点列表
- (SHotSpot *)getHotSpotByID:(int)iID; 根据ID获取热点
- (NSArray *)getHotSpotsByModel:(SModel *)model; 获取模型上的热点列表
- (NSArray *)getHotSpotsByM3DPath:(NSString *)m3dPath; 根据M3d路径获取对于模型上的热点列表
- (NSArray *)getSHotSpotList; 获取全部热点列表
- (void) clearData; 清空数据
- (BOOL) executeAction:(SHotSpot*)hotSpot withDefineAction:(void (^)(void))action; 执行Action
获取SViewBase版本号
接口
+ (NSString*)getSViewVersion;
说明
获取SViewBase版本号
参数
无参数
返回值
NSString
备注
返回值为SViewBase控件版本号。
获取M3D版本号
接口
+ (NSString*)getM3DVersion;
说明
获取M3D版本号
参数
无参数
返回值
NSString
备注
返回值为M3D控件版本号。
获取SVLLib版本号
接口
+ (NSString*)getSVLLibVersion;
说明
获取SVLLib版本号
参数
无参数
返回值
NSString
备注
返回值为SVLLib控件版本号。
设置GLES渲染器版本
接口
+ (void)setGLESVersion:(int) version;
说明
设置app工作路径
参数
参数 是否必须 说明
version:版本号 1.0、2.0(默认)/td>
返回值
void
备注
该方法需要在SViewBase初始化之前设置
获取GLES版本号
接口
+ (int)getGLESVersion;
说明
获取GLES版本号
参数
无参数
返回值
int
备注
返回值为1时,openGLES版本为2;返回值为1时,openGLES版本为1。
设置app工作路径
接口
+ (void)setAppWorkPath:(NSString *)appWorkPath;
说明
设置app工作路径
参数
参数 是否必须 说明
appWorkPath 外部设置的工作路径
返回值
void
备注
appWorkPath只能为沙盒路径,同时该路径是必须设置,否则会导致页面显示不全;该方法需要在SViewBase初始化之前设置
获取app工作路径
接口
+ (NSString *)getAppWorkPath;
说明
获取app工作路径
参数
无参数
返回值
NSString:返回的值即设置的工作路径
备注
设置参数(NSString)
接口
- (void) setParameterString:(NSString*)key value:(NSString*)value;
说明
设置参数(NSString)
参数
参数 是否必须 说明
key
value
返回值
void
备注
key值在类中有定义
获取参数(NSString)
接口
- (NSString*) getParameterString:(NSString*)key;
说明
获取参数(NSString)
参数
参数 是否必须 说明
key
返回值
NSString
备注
key值在类中有定义
设置参数(int)
接口
- (void) setParameterInt:(NSString*)key value:(int)value;
说明
设置int参数
参数
参数 是否必须 说明
key
value
返回值
void
备注
key值在类中有定义
获取参数(int)
接口
- (int) getParameterInt:(NSString*)key;
说明
获取int参数
参数
参数 是否必须 说明
key
返回值
int
备注
key值在类中有定义
设置参数(BOOL)
接口
- (void) setParameterBool:(NSString*)key value:(BOOL)value;
说明
设置布尔型参数
参数
参数 是否必须 说明
key value
返回值
void
备注
key值在类中有定义
获取参数(BOOL)
接口
- (BOOL) getParameterBool:(NSString*)key;
说明
获取布尔型参数
参数
参数 是否必须 说明
key
返回值
BOOL
备注
key值在类中有定义
其他参数
属性
OtherParameter
说明
其他操作参数
参数
参数 是否必须 说明
isThreeFingerDrag 三指拖拽
autoSelectRotateCenter 自动制定旋转中心点
返回值
备注
OtherParameter para = OtherParameter{YES,YES}; sviewBase.parameter.otherParameter = para;
打开文件
接口
- (BOOL) open:(NSString*)filePath asyn:(BOOL)asyn percent:(FileReadPercentBlock)percentBlock finish:(FinishOpenBlock)finishBlcok;
说明
打开模型文件
参数
参数 是否必须 说明
filePath 本地文件路径
asyn 是否异步加载
percentBlock 加载进度回调(异步加载不包含在内)
finishBlcok 完成加载,异步加载的回调实在加载过程中
返回值
BOOL 是否打开成功
备注
异步加载中,进度和完成的回调与异步加载并行。
取消打开
接口
- (void) cancelOpen;
说明
加载过程中取消打开
参数
参数 是否必须 说明
返回值
void
备注
关闭文件
接口
-(void)close;
说明
关闭当前打开的文件
参数
无参数
返回值
void
备注
关闭已经打开的文件;在释放SViewBase对象时,需要此接口关闭文件
保存文件
接口
-(void) save:(NSString*) tarFilePath;
说明
保存文件
参数
参数 是否必须 说明
tarFilePath 目标路径
返回值
void
备注
目标路径与当前打开文件路径相同,为保存;与当前打开文件路径不同,为另存。
获取数据
接口
- (NSData*) getFile:(NSString*)fileName;
说明
获取SVLX文件中指定名称的数据
参数
参数 是否必须 说明
fileName 文件名称
返回值
NSData
备注
获取SVLX文件中指定名称的数据。
添加文件
接口
- (BOOL) addFile:(NSString*)filePath;
说明
添加文件到svlx文件中
参数
参数 是否必须 说明
filePath 需要插入的文件路径
返回值
BOOL 是否成功
备注
添加文件到svlx文件中,如果存在,替换原有文件
删除文件
接口
- (BOOL) removeFile:(NSString*)fileName;
说明
删除svlx文件的指定名称的文件
参数
参数 是否必须 说明
fileName 文件名称
返回值
BOOL:是否成功
基类
属性
名称 父类 说明
macroManager SViewBase 协同宏管理类
sviewer SViewBase 视口基类
animationPlayer SViewBase 动画播放器
bomManager SViewBase 装配管理器
measures SViewBase 测量类
annotations SViewBase 批注类
hotSpots SViewBase 热点类
modelViews SViewBase 视图类
parameter SViewBase 参数配置类
throughManager SViewBase 漫游管理器
materialTemplateManager SViewBase 模板材质管理器
resourceManager SViewBase 资源管理器
svlxManager SViewBase svlx文件管理器
selecter SViewer 选择器
设置过滤类型
接口
- (void)setPickShapeType:(SSHAPETYPE)type;
说明
设置过滤类型
参数
参数 是否必须 说明
type 类型 SSHAPE_POINT//点 SSHAPE_EDGE//边 SSHAPE_FACE//面 SSHAPE_MODEL//模型
返回值
void
备注
设置过滤类型,选择时过滤选择类型。
获取过滤类型
接口
- (SSHAPETYPE)getPickShapeType;
说明
获取过滤类型
参数
返回值
SSHAPETYPE SSHAPE_POINT//点 SSHAPE_EDGE//边 SSHAPE_FACE//面 SSHAPE_MODEL//模型
备注
结束持续旋转
接口
- (bool) endContinueRotate;
说明
结束持续旋转,设置持续旋转后使用
参数
返回值
bool
备注
自动旋转
接口
- (void)startRotateOnSpeed:(float)speed;
说明
设置自动旋转
参数
参数 是否必须 说明
speed 旋转速度
返回值
void
备注
设置模型自动旋转
停止旋转
接口
- (void)stopAutoRotate;
说明
在模型自动旋转时,调用该接口可以停止旋转
参数
无参数
返回值
void
备注
在模型自动旋转时,调用该接口可以停止旋转
恢复默认旋转中心
接口
-(void)restoreRotationCenter
说明
恢复默认旋转中心
参数
无参数
返回值
void
备注
指定转旋下,旋转中心随模型放大缩小而变化
设置观察模式
接口
- (void)setOrbitMode:(SVIEW_CONSTRAINT_MODE)orbitMode;
说明
设置观察模式
参数
参数 是否必须 说明
orbitMode 模式 SVIEW_CONSTRAINT_MODE_3DORBIT//约束观察 SVIEW_CONSTRAINT_MODE_3DFORBIT//动态观察 SVIEW_CONSTRAINT_MODE_3DCORBIT//自由观察
返回值
void
备注
设置模型的观察模式,模型方向旋转受限
设置着色模式
接口
- (void) setDrawMode:(DrawModeType)mode;
说明
设置模型的着色模式
参数
参数 是否必须 说明
mode 模式
返回值
void
备注
模式渲染方式 DrawModeType DrawModeType_Solid//实体 DrawModeType_Transparent//半透明 DrawModeType_Edge//边 DrawModeType_WireFrame//线框 DrawModeType_SolidAndWire//实体+线框 DrawModeType_TrilateralEdge//网格 DrawModeType_ResetTransparent//重置半透明 DrawModeType_Box//包围盒
获取着色模式
接口
- (DrawModeType) getDrawMode;
说明
获取着色模式
参数
无参数
返回值
DrawModeType
备注
模式渲染方式 DrawModeType DrawModeType_Solid//实体 DrawModeType_Transparent//半透明 DrawModeType_Edge//边 DrawModeType_WireFrame//线框 DrawModeType_SolidAndWire//实体+线框 DrawModeType_TrilateralEdge//网格 DrawModeType_ResetTransparent//重置半透明 DrawModeType_Box//包围盒
设置视图方向
接口
-(void) setPerspective:(PerspectiveDirection) direction;
说明
设置模型的朝向
参数
参数 是否必须 说明
direction 方向
返回值
void
备注
PerspectiveDirection PerspectiveDirectionForward、PerspectiveDirectionBack、PerspectiveDirectionLeft、PerspectiveDirectionRight、PerspectiveDirectionUp、PerspectiveDirectionDown、PerspectiveDirectionNone
获取当前模型相关资源路径
接口
- (NSArray*)getAllSrcFiles;
说明
获取模型渲染中引用的资源
参数
无参数
返回值
NSArray
备注
仅适用svl模型
设置视图默认方向
接口
-(void)setDefaultView:(int)viewType;
说明
视图默认方向
参数
参数 是否必须 说明
viewType 类型(方向)
返回值
void
备注
viewType类型 FRONT:0;BACK:1;LEFT:2;RIGHT:3;TOP:4;BOTTOM:5;ISOMETRIC:6(默认方向);
刷新
接口
- (void)requestDraw;
说明
请求刷新
参数
返回值
void
备注
复位
接口
- (void)restoreView;
说明
复位视图
参数
返回值
void
备注
设置立体模式(3D显示)
接口
- (void)setUseStereoMode:(BOOL)state;
说明
设置立体模式,显示双屏幕
参数
参数 是否必须 说明
state
返回值
void
备注
立体模式下显示双屏幕
获取是否使用立体模式
接口
- (BOOL)getStereoModeState
说明
获取是否使用立体模式
参数
返回值
void
备注
设置投影模式
接口
- (void) setCameraProjectionType:(int)projectionType;
说明
投影模式,0-平行投影 1-透视投影
参数
参数 是否必须 说明
projectionType 投影模式
返回值
void
备注
默认为平行投影
获取投影类型
接口
- (int) getCameraProjectionType;
说明
获取投影类型
参数
返回值
void
备注
投影类型 0-平行投影 1-透视投影
获取世界包围盒
接口
- (SBoudingBox*) getTotalWorldBoudingBox;
说明
获取世界包围盒
参数
返回值
SBoudingBox
备注
获取相机位置
接口
- (SVector3)getCameraPosition;
说明
获取相机在三维坐标系中的位置
参数
返回值
SVector3
备注
设置相机位置
接口
- (void)setCameraPosition:(SVector3)position;
说明
设置相机在三维坐标系中的位置
参数
参数 是否必须 说明
position 三维坐标系位置
返回值
void
备注
获取相机状态
接口
- (NSString *)getCameraState;
说明
获取相机状态
参数
NSString
返回值
void
备注
设置相机状态
接口
- (void)setCameraState:(NSString *)state;
说明
设置相机状态
参数
参数 是否必须 说明
state 相机字符串
返回值
void
备注
全局渲染
接口
- (BOOL)getGlobalEffect;
说明
是否是全局渲染(珠宝)
参数
返回值
void
备注
全局渲染为特定珠宝渲染。
开始/暂停页面刷新
接口
-(void) setGLViewRefresh:(BOOL)isRefresh;
说明
开始/暂停页面的刷新
参数
参数 是否必须 说明
isRefresh 开始/暂停刷新页面
返回值
void
备注
在打开文件成功之后,会自动调用该接口。在页面隐藏或者程序进入后台之厚,需要设置暂停刷新页面
设置背景色
接口
- (void) setBackgroundColor:(SColor*)startColor endColor:(SColor*)endColor;
说明
设置模型展示页面的背景颜色
参数
参数 是否必须 说明
startColor 页面开始颜色
endColor 页面结束颜色
返回值
void
备注
设置页面背景色,该背景色具有渐变效果
获取背景色
接口
- (void) getBackgroundColor:(SColor*)startColor endColor:(SColor*)endColor;
说明
获取当前模型展示页面的背景色
参数
参数 是否必须 说明
startColor 页面开始颜色指针
endColor 页面结束颜色指针
返回值
void
备注
在调用之前需要创建2个指针,传入方法,调用该方法后,即可获取当前颜色
设置背景图片
接口
-(void)setBackgroundImage:(NSString*)imagePath;
说明
设置背景图片
参数
参数 是否必须 说明
imagePath 背景图片路径
返回值
void
备注
设置背景图片,确保imagePath不为空
设置背景类型
接口
- (void) setBackgroundType:(BackgroundType)type;
说明
设置背景类型
参数
参数 是否必须 说明
type 背景使用类型 Background_Color//渐变色 Background_Image//图片 Background_SkyBox//天空盒 Background_Transparent//背景透明 Background_WaterMark//水印
返回值
void
备注
设置背景类型
获取背景类型
接口
- (BackgroundType) getBackgroundType;
说明
设置背景类型
参数
返回值
BackgroundType
备注
BackgroundType Background_Color//渐变色 Background_Image//图片 Background_SkyBox//天空盒 Background_Transparent//背景透明 Background_WaterMark//水印
内部设置背景
接口
- (BOOL) interBackgroundState;
说明
内部是否设置背景
参数
返回值
BOOL
备注
截图
接口
- (UIImage*)takeSnapshot;
- (UIImage*)takeSnapshot:(CGSize)newSize;
说明
提供两种截图方法,一种带参数,一种不带参数。带参数返回的图片size为指定的大小,不带参数返回的图片size为sviewBase的大小
参数
参数 是否必须 说明
newSize 生成图片的大小
返回值
void
备注
设置手势类型
接口
- (void)setGestureMode:(SVIEWBASEGESTUREMODE_MASK)type
说明
设置手势类型
参数
参数 是否必须 说明
type 手势类型枚举,包括普通、选择多拽、选择复位、单指移动、单指缩放、选择以及选中居中等类型
返回值
void
备注
设置手势的类型
获取当前手势类型
接口
- (SVIEWBASEGESTUREMODE_MASK) getGestureMode
说明
获取当前的手势类型
参数
无参数
返回值
SVIEWBASEGESTUREMODE_MASK:包括普通、选择多拽、选择复位、单指移动、单指缩放、选择以及选中居中等类型
备注
获取当前的手势类型
恢复正常手势操作
接口
- (void)defaultGestureMode
说明
恢复正常手势操作
参数
无参数
返回值
void
备注
恢复正常手势操作
处理单击操作
接口
- (void)onClicked:(CGPoint)point sviewBase:(SViewBase *)sviewBase;
说明
处理单击操作
参数
参数 是否必须 说明
point 内部传出的点击的点
sviewBase 操作的对象
返回值
void
备注
该方法为SViewBase的代理方法
处理双击操作
接口
- (void)onDoubleClicked:(CGPoint)point sviewBase:(SViewBase *)sviewBase
说明
处理双击操作
参数
参数 是否必须 说明
point 内部传出的点击的点
sviewBase 操作的对象
返回值
void
备注
该方法为SViewBase的代理方法
处理点击操作
接口
- (BOOL)onTouchEvent:(SMotionEvent*)event sviewBase:(SViewBase *)sviewBase
说明
处理点击操作
参数
参数 是否必须 说明
point 内部传出的点击的点
sviewBase 操作的对象
返回值
BOOL
备注
该方法为SViewBase的代理方法
移动到某位置(动画效果)
接口
- (void) move:(SShape*)shape position:(SVector2)screentPnt;;
说明
根据传入的点和shape对象,将shape对象对应的模型移动到指定点
参数
参数 是否必须 说明
shape 需要移动的模型对象
screentPnt 移动的目标位置
返回值
void
备注
将模型带动画效果的方式移动到指定点
复位某种属性(动画效果)
接口
- (void) restore:(SShape*)shape type:(RestoreType)type;
说明
复位模型的某种属性
参数
参数 是否必须 说明
shape 需要复位的模型对象
type 复位的类型
返回值
void
备注
模型以动画形式复位某种属性;RestoreType Restore_Type_Transform:位置,Restore_Type_Color:颜色,Restore_Type_Visible:显隐
隐藏选择模型(协同录制)
接口
-(void) hideSelected
说明
隐藏选中的模型
参数
无参数
返回值
void
备注
调用该接口可以隐藏选中的模型并录制协同宏
显示隐藏模型(协同录制)
接口
- (void)showSelected
说明
显示选中的模型
参数
无参数
返回值
void
备注
调用该接口可以显示已选中的模型并录制协同宏
复位选中模型(协同录制)
接口
- (void)restoreSelectedModel;
说明
复位选中的模型
参数
无参数
返回值
void
备注
复位选中模型, 需要先选中需要复位的模型,然后在调用该接口,接口中存在录制协同宏逻辑。
模型显隐交换
接口
- (void)exchangModelVisible;
说明
选中模型进行显隐交换
参数
无参数
返回值
void
备注
获取复位的模型数量
接口
-(void) getAllInitPosModel:(int*) initedModelCount allModelCount:(int*) allModelCount;
说明
获取目前复位的模型数量
参数
参数 是否必须 说明
initedModelCount 已复位的数量
allModelCount 所有的模型数量
返回值
void
备注
获取模型和模型数量
重设模型的随机色
接口
- (void)resetAllModelRandomColor;
说明
重新设置模型内每个小模型的颜色,随机生成
参数
无参数
返回值
void
备注
调用该接口可以随机重新设置模型的颜色
根据SVL路径获取Shape
接口
- (SShape*)getShapeBySVLPath:(NSString*)path;
说明
根据SVL路径获取Shape 例"PATH|0|1"
参数
参数 是否必须 说明
path SVL路径
返回值
SShape
备注
根据M3D路径获取Shape
接口
- (SShape*)getShapeByM3DPath:(NSString*)path;
说明
根据M3D路径获取Shape 例"M3D|MAIN|PATH|0|1"
参数
参数 是否必须 说明
path M3D路径
返回值
SShape
备注
根据Shape获取SVL路径
接口
- (NSString*)getSVLPathByShape:(SModel*)smodel;
说明
根据Shape获取SVL路径
参数
参数 是否必须 说明
smodel 模型
返回值
NSString
备注
根据Shape获取M3D路径
接口
- (NSString*)getM3DPathByShape:(SModel*)smodel;
说明
根据Shape获取M3D路径
参数
参数 是否必须 说明
smodel 路径
返回值
NSString
备注
获取
接口
- (SShape*)getShape:(int)shapeId;
说明
根据ID获取模型
参数
参数 是否必须 说明
shapeId 模型id
返回值
SShape
备注
删除
接口
- (void)removeShape:(int)shapeID;
说明
根据ID删除模型
参数
参数 是否必须 说明
shapeID 模型id
返回值
void
备注
拾取
接口
- (int) pickShapeX:(float)x Y:(float)y Type:(int)shapeType GeoType:(int)geoType;
说明
根据屏幕点,拾取模型并返回ID
参数
参数 是否必须 说明
x 拾取屏幕点的横坐标
y 拾取屏幕点的纵坐标
shapeType 拾取对象类型
geoType 几何类型
返回值
int :拾取对象的ID
备注
如果返回的值为-1,在没有拾取到对象
选择
接口
-(int)selectShape:(float)x screenY:(float)y shapeType:(int)shapeType geoType:(int)geoType;
说明
根据坐标选择模型,并高亮,但并未加入选择器中管理
参数
参数 是否必须 说明
x 拾取屏幕点的横坐标
y 拾取屏幕点的纵坐标
shapeType 拾取对象类型
geoType 几何类型
返回值
int :拾取对象的ID
备注
如果返回的值为-1,在没有拾取到对象,取消高亮时设置模型的显隐
获取根模型
接口
- (SModel*)getRootModel;
说明
获取根模型
参数
无参数
返回值
SModel
备注
设置所有PMI的可见性
接口
- (void)setAllPMISVisible:(BOOL)isVisible;
说明
设置所有PMI的可见性
参数
参数 是否必须 说明
isVisible 是否可见
返回值
void
备注
设置所有PMI的颜色
接口
- (void)setAllPMIColor:(SColor*)color;
说明
设置所有PMI的颜色
参数
参数 是否必须 说明
color 颜色
返回值
void
备注
根据ID设置PMI的可见性
接口
- (void)setPMISVisible:(BOOL)isVisible forID:(int)pmiID;
说明
根据ID设置PMI的可见性
参数
参数 是否必须 说明
isVisible 是否可见
pmiID PMIid
返回值
void
备注
设置模型PMI的可见性
接口
- (void)setPMISVisible:(BOOL)isVisible forModel:(SModel*)sModel;
说明
设置模型PMI的可见性
参数
参数 是否必须 说明
isVisible 是否可见
sModel 模型
返回值
void
备注
聚焦模型
接口
- (void)focusModel:(SModel* )smodel;
说明
聚焦模型到中心位置
参数
参数 是否必须 说明
smodel 模型
返回值
void
备注
类型(get/set)
接口
- (SSHAPETYPE)getType;
- (void)setType:(SSHAPETYPE)type
说明
类型(get/set) SShapeType枚举见SShape类中
参数
参数 是否必须 说明
type 类型
返回值
SSHAPETYPE 类型
备注
透明度(get/set)
接口
- (float)getAlpha;
- (void)setAlpha:(float)alpha;
说明
透明度(get/set)
参数
参数 是否必须 说明
alpha 透明度
返回值
float
备注
模型相同装配共用一种材质,设置后全体改变
实例透明度(get/set)
接口
- (float)getInstanceAlpha;
- (void)setInstanceAlpha:(float)alpha;
说明
实例透明度(get/set)
参数
参数 是否必须 说明
alpha 透明度
返回值
float
备注
修改当前实例透明度,不影响其他使用同一材质的模型。
重置透明度
接口
- (void)resetAlpha;
说明
重置透明度
参数
返回值
void
备注
重置透明度到初始透明度
复位
接口
- (void)restore;
说明
复位颜色,位置,可见性
参数
返回值
void
备注
复位颜色,位置,可见性
颜色(get/set)
接口
- (SColor*)getColor;
- (void)setColor:(SColor*)color;
说明
颜色(get/set)
参数
参数 是否必须 说明
color 颜色
返回值
SColor
备注
模型相同装配共用一种材质,设置后全体改变
实例颜色(get/set)
接口
- (SColor*)getInstanceColor;
- (void)setInstanceColor:(SColor *)color;
说明
实例颜色(get/set)
参数
参数 是否必须 说明
color 颜色
返回值
SColor
备注
修改当前实例颜色,不影响其他使用同一材质的模型。
重置颜色
接口
- (void)resetColor;
说明
重置颜色到初始颜色
参数
返回值
void
备注
选中状态(get/set)
接口
- (BOOL)isSelected;
- (void)setSelected:(BOOL)select;
说明
选中状态的设置和获取
参数
参数 是否必须 说明
select 是否选中
返回值
BOOL
备注
可见性(get/set)
接口
- (BOOL)isVisible;
- (void)setVisible:(BOOL)visible;
说明
可见性的设置和获取
参数
参数 是否必须 说明
visible 是否可见
返回值
BOOL
备注
ID(get/set)
接口
- (int)getID;
- (void)setID:(int) value;
说明
ID的设置和获取
参数
参数 是否必须 说明
value ID值
返回值
int
备注
名称(get/set)
接口
- (NSString *)getName;
- (void)setName:(NSString *)name;
说明
名称的设置和获取
参数
参数 是否必须 说明
name 名称
返回值
NSString
备注
材质(get/set)
接口
- (SMaterial*) getMaterial;
- (void) setMaterial:(SMaterial*) material;
说明
材质的设置和获取
参数
参数 是否必须 说明
material 材质
返回值
SMaterial
备注
添加子模型
接口
- (void)addSubModel:(SModel *)model;
说明
增加子model
参数
参数 是否必须 说明
model 模型
返回值
void
备注
删除子模型
接口
- (void)removeSubModel:(SModel *)model;
说明
删除子model
参数
参数 是否必须 说明
model 模型
返回值
void
备注
获取所有子模型
接口
- (NSArray*)getSubModels;
说明
获取所有子模型
参数
返回值
NSArray
备注
获取子模型数
接口
- (int)getSubModelCount;
说明
获取子模型数
参数
返回值
int
备注
获取实例数
接口
- (int)getInstanceCount;
说明
获取实例数
参数
返回值
int
备注
获取顶点数
接口
- (int)getVertexCount:(int) level;
说明
获取顶点数
参数
参数 是否必须 说明
level 层级
返回值
int
备注
父模型(get/set)
接口
- (SModel*)getParent;
- (void)setParent:(SModel*) model;
说明
父模型的获取和设置
参数
参数 是否必须 说明
model 模型
返回值
SModel
备注
获取某种属性
接口
- (NSString *)getProperty:(NSString *)keyString;
说明
获取某种属性
参数
参数 是否必须 说明
keyString 键值
返回值
NSString
备注
获取属性
接口
- (NSString *)getProperties;
说明
获取模型属性,::分割key与value ;;分割属性
参数
返回值
NSString
备注
设置属性(添加/修改)
接口
- (void)setProperty:(NSString *)key value:(NSString *)value;
说明
设置属性(添加/修改)
参数
参数 是否必须 说明
key 键值
value
返回值
void
备注
清空属性
接口
- (void)clearProperties;
说明
清空模型属性
参数
返回值
void
备注
清空模型
接口
- (void)clear;
说明
清空model
参数
返回值
void
备注
原型ID(get)
接口
- (int)getProtoTypeId;
说明
获取ProtoTypeID
参数
返回值
int
备注
是否为装配
接口
- (BOOL)isAssembly;
说明
是否为装配
参数
返回值
BOOL
备注
包围盒(get)
接口
- (SBoudingBox*)getBoundingBox;
说明
获取包围盒
参数
返回值
SBoudingBox
备注
包围盒中心(get)
接口
- (SVector3)getWorldBoundingBoxCenter;
说明
获取包围盒中心
参数
返回值
SVector3
备注
位置(get/set)
接口
- (SVector3)getWorldPosition;
- (void)setWorldPosition:(SVector3)position;
说明
增加子model
参数
参数 是否必须 说明
position 位置
返回值
SVector3
备注
添加
接口
- (void)add:(SShape*) shape;
说明
添加到选择器中
参数
参数 是否必须 说明
shape 模型
返回值
void
备注
删除
接口
- (void)remove:(SShape*) shape;
说明
从选择器中删除
参数
参数 是否必须 说明
shape 模型
返回值
void
备注
清空
接口
- (void)clear;
说明
清空选择器
参数
返回值
void
备注
获取
接口
- (SShape*)get;
说明
获取选择器中的模型
参数
返回值
SShape
备注
如果选择器中存在多个,取第一个。
获取全部
接口
- (NSArray*)getAll;
说明
获取选择器中所有模型
参数
返回值
NSArray
备注
数量
接口
- (int)count;
说明
选择器中模型数量
参数
返回值
int
备注
是否存在
接口
- (bool)exist:(SShape*)shape;
说明
选择器中是否存在shape
参数
参数 是否必须 说明
shape 模型
返回值
bool
备注
插入
接口
-(BOOL) insert:(NSString*)filePath To:(SModel*)parentModel RetModel:(SModel*)retModel;
说明
打开指定文件路径的模型,将模型加入到parentModel下子模型点最后位置,并传出新模型指针
参数
参数 是否必须 说明
filePath 插入模型的文件路径
parentModel 父节点对象
retModel 新模型对象
返回值
BOOL:成功/失败
备注
打开指定文件路径的模型,将模型加入到parentModel下子模型点最后位置,并传出新模型指针a
复制
接口
- (BOOL)copy:(SModel *)model To:(SModel*)parentModel NewModel:(SModel*)newModel;
说明
将model复制到parentModel下子模型最后一个位置
参数
参数 是否必须 说明
model 复制的模型对象
parentModel 父节点对象
retModel 新模型对象
返回值
BOOL:成功/失败
备注
将model复制到parentModel下子模型最后一个位置
移动
接口
- (BOOL)move:(SModel*)model To:(SModel*)parentModel;
说明
将model移动到parentModel下子模型点最后一个位置
参数
参数 是否必须 说明
model 移动的模型对象
parentModel 父节点对象
返回值
BOOL:成功/失败
备注
将model移动到parentModel下子模型点最后一个位置
移动模式
接口
- (BOOL)draggerMode:(int)mode;
说明
移动模式 0:平移,1:旋转,2:缩放
参数
参数 是否必须 说明
mode 模式
返回值
void
备注
移动模式 0:平移,1:旋转,2:缩放
移动方向
接口
- (void)draggerAxis:(int)axis;
说明
按坐标轴移动 0:X轴,1:Y轴,2:Z轴,3:面
参数
参数 是否必须 说明
axis
返回值
void
备注
重命名
接口
- (BOOL)reName:(NSString*)name Model:(SModel*)model;
说明
重命名模型
参数
参数 是否必须 说明
model 需要重命名的模型对象
name 新名字
返回值
BOOL:成功/失败
备注
重命名模型
删除模型
接口
- (BOOL)remove:(SModel *) model;
说明
删除模型节点
参数
参数 是否必须 说明
model 需要删除的模型对象
返回值
BOOL:成功/失败
备注
删除模型节点
替换
接口
- (SModel*)replace:(SModel*)model filePath:(NSString*)filePath;
说明
打开指定文件路径的模型,用该模型替换掉model,同时将model的配置ID、路径等赋值给新建模型 并返回
参数
参数 是否必须 说明
model 将被替换的模型
filePath 文件全路径
返回值
SModel
备注
删除旧模型
创建
接口
- (SModelView*) create:(SModelViewType)type withName:(NSString*)name withStatus:(ModelViewStatus)status;
说明
创建视图
参数
参数 是否必须 说明
type SUndefine:未初始化,SDefaultView:默认视图,SOrignalView:原始,SUserView:自定义视图
name 名称
status MODELVIEW_STATUS_ALL:同时记录相机位置和零件位置 MODELVIEW_STATUS_CAMERA:只记录相机的位置 MODELVIEW_STATUS_MODEL:只记录零件位置
返回值
SModelView
备注
已获取截图
删除
接口
- (bool) remove:(SModelView*)modelView;
说明
删除视图
参数
参数 是否必须 说明
modelView 视图
返回值
bool
备注
清空
接口
- (void) clear;;
说明
删除所有视图
参数
无参数
返回值
void
备注
保存
接口
- (void) save:(NSString*)svlxPath;
说明
保存视图文件到SVLX文件中
参数
参数 是否必须 说明
svlxPath svlx文件路径
返回值
void
备注
根据ID获取
接口
- (SModelView *) getModelViewByID:(int)viewID;
说明
根据ID获取视图
参数
参数 是否必须 说明
viewID 视图ID
返回值
SModelView
备注
根据名称获取
接口
- (SModelView *) getModelViewByName:(NSString *)name;
说明
根据ID获取视图
参数
参数 是否必须 说明
name 名称
返回值
SModelView
备注
获取所有视图
接口
- (NSArray *) getAllModelView;
说明
根据ID获取视图
参数
返回值
NSArray
备注
清除默认视图
接口
- (void) clearDefaultModelView;
说明
清除默认视图
参数
返回值
void
备注
显示视图
接口
- (void) showView:(SModelView*)modelView withAni:(BOOL)bAni;
说明
显示视图
参数
参数 是否必须 说明
modelView 视图
bAni 是否使用动画效果
返回值
void
备注
更新当前场景
接口
- (void) updateModelViewByCurrentScene:(SModelView *)modelView;
说明
更新当前场景到视图中
参数
参数 是否必须 说明
modelView 视图
返回值
void
备注
显示关联note
接口
- (void) showNote:(SModelView *)modelView;
说明
显示视图关联的note
参数
参数 是否必须 说明
modelView 视图
返回值
void
备注
隐藏关联note
接口
- (void) hideNote:(SModelView *)modelView;
说明
隐藏视图关联的note
参数
参数 是否必须 说明
modelView 视图
返回值
void
备注
剖切
接口
- (void) clip:(ClipParameter)parameter;
说明
基于坐标平面创建剖面,可调节剖切深度,展示剖切面内容
参数
参数 是否必须 说明
parameter 结构体:ClipParameter { int direction;//1/2/3(x/y/z) +-与方向相关 float position;//0-100 位置 BOOL showClip;//盖面的截面 BOOL showCapping;//剖面的截面 BOOL reverse;//反向 };
返回值
void
备注
多面剖
接口
- (void) multiClip:(MultiClipParameter)parameter;
说明
基于坐标平面创建多个剖面,可调节剖切深度,展示剖切面等内容
参数
参数 是否必须 说明
parameter 结构体:MultiClipParameter { int directionX;// +-1 与方向相关 float positionX;//0-100 位置 int directionY;// +-1 与方向相关 float positionY;//0-100 位置 int directionZ;// +-1 与方向相关 float positionZ;//0-100 位置 BOOL showClip;//盖面的截面 BOOL showCapping;//剖面的截面 BOOL reverse;//反向 };
返回值
void
备注
取消剖切
接口
- (void) cancelClip;
说明
取消模型的剖切展示
参数
无参数
返回值
void
备注
爆炸
接口
- (BOOL) explosive:(ExplosiveParameter)parameter;
说明
展示模型爆炸效果
参数
参数 是否必须 说明
parameter ExplosiveParameter { int direction;//0/1/2(中心/x/y)方向 float position;//0-100 位置 BOOL isUseAnimation;// };
返回值
BOOL
备注
取消爆炸
接口
- (BOOL) cancelExplosive;
说明
取消模型的爆炸展示
参数
无参数
返回值
BOOL
备注
设置爆炸级别
接口
- (void) setExplosiveLevel:(int)level;
说明
设置爆炸到装配的第几级
参数
参数 是否必须 说明
level 装配的级别
返回值
void
备注
获取爆炸级别
接口
- (int) getExplosiveLevel;
说明
获取爆炸到装配的第几级
参数
返回值
int
备注
循环
属性
isLoop
说明
设置和获取是否循环播放
参数
返回值
void
备注
单步
属性
singlePlay
说明
设置和获取是否仅播放一步(分步动画)
参数
返回值
void
备注
漫游
属性
useCamera
说明
设置和获取,在动画播放中开启自动漫游,场景会跟随动画的播放进行调整
参数
返回值
void
备注
进度
属性
percent
说明
设置和获取动画播放进度
参数
返回值
void
备注
动画播放过程中,进度回调中时时更新进度。player.playPercent = ^(float percent) { };
速度
属性
speed
说明
设置和获取动画播放速度
参数
返回值
void
备注
当前任务
接口
- (SAnimationTask*) getCurrentTask;
说明
当前正在播放的任务
参数
返回值
SAnimationTask
备注
播放
接口
-(BOOL) play;
说明
开始播放模型的动画文件,播放前设置激活(player.activeTask = task)
参数
无参数
返回值
BOOL:YES/NO 成功/失败
备注
动画播放过程中,进度回调中时时更新进度。player.playPercent = ^(float percent) { };
播放全部
接口
- (void) playAll;
说明
开始播放全部的动画文件,内部已激活
参数
无参数
返回值
void
备注
动画播放过程中,进度回调中时时更新进度。player.playPercent = ^(float percent) { };
播放过程
接口
- (void) playProcess;
说明
开始播放模型的动画文件,播放前设置激活(player.activeTask = task)
参数
无参数
返回值
void
备注
动画播放过程中,进度回调中时时更新进度。player.playPercent = ^(float percent) { };
播放步骤
接口
- (void) playStep;
说明
开始播放模型的动画文件,播放前设置激活(player.activeTask = task)
参数
无参数
返回值
void
备注
动画播放过程中,进度回调中时时更新进度。player.playPercent = ^(float percent) { };
上一步
接口
- (void) playPre;
说明
分步动画中,播放当前任务的上一步,如果是第一步,则播放第一步
参数
无参数
返回值
void
备注
动画播放过程中,进度回调中时时更新进度。player.playPercent = ^(float percent) { };
下一步
接口
- (void) playNext;
说明
分步动画中,播放当前任务的下一步,如果是最后一步,则播放最后一步
参数
无参数
返回值
void
备注
动画播放过程中,进度回调中时时更新进度。player.playPercent = ^(float percent) { };
播放剩余
接口
- (void) playNextAll;
说明
播放剩余的全部动画,如果没有激活任务,则播放全部。
参数
无参数
返回值
void
备注
动画播放过程中,进度回调中时时更新进度。player.playPercent = ^(float percent) { };
播放其中一部分
接口
- (void) playFrom:(int)start to:(int)end;
说明
播放任务列表中从start到end的所有任务
参数
参数 是否必须 说明
start 开始的任务下标
end 结束的任务下标
返回值
void
备注
暂停
接口
- (bool) pause;
说明
暂停模型动画文件的播放
参数
无参数
返回值
bool:YES/NO 成功/失败
备注
回调中接受状态的变更,player.playStatus = ^(PLAYSTATUS status) { }; PLAYSTATUS_PLAYING, PLAYSTATUS_PAUSE, PLAYSTATUS_STOP,
停止
接口
- (bool) stop;
说明
停止动画的播放
参数
返回值
BOOL:YES/NO 成功/失败
备注
回调中接受状态的变更,player.playStatus = ^(PLAYSTATUS status) { }; PLAYSTATUS_PLAYING, PLAYSTATUS_PAUSE, PLAYSTATUS_STOP,
是否正在播放
接口
-(BOOL) isPlaying
说明
是否正在播放
参数
无参数
返回值
BOOL:YES/NO:正在播放/暂停播放
备注
是否是单段动画
接口
- (BOOL) isSingleAnimation;
说明
判断是否是单段动画
参数
无参数
返回值
BOOL: YES/NO: 单步动画/分步动画
备注
是否有动画
接口
-(BOOL) isAnimation
说明
判断是否有动画
参数
无参数
返回值
BOOL: YES/NO: 有/无动画
备注
完成回调
属性
finishAnnotation
说明
完成一次完整的批注后,回调
参数
返回值
void
备注
sviewBase.annotations.finishAnnotation = ^(SAnnotation * _Nonnull annotation) {};
执行命令
接口
- (void) doAnnotationCommand:(int)type;
说明
执行批注命令
参数
参数 是否必须 说明
type 批注命令类型
返回值
void
备注
类型ANNOTATION_TYPE_BASE:基本批注、ANNOTATION_TYPE_COMPONENTNAME:零组件、ANNOTATION_TYPE_ORDER:序号、ANNOTATION_TYPE_EDIT:编辑
关闭命令
接口
- (void) closeAnnotationCommand;
说明
关闭批注命令
参数
返回值
void
备注
获取所有对象
接口
- (NSArray*)getAll;
说明
获取所有批注对象
参数
返回值
void
备注
清空
接口
- (void)clear;
说明
清空所有对象
参数
返回值
void
备注
添加
接口
- (void)add:(SAnnotation*)annotation;
说明
把批注对象添加到管理中,以便于关闭文件是清除,以及拾取等
参数
参数 是否必须 说明
annotation 批注对象
返回值
void
备注
删除
接口
- (void)remove:(SAnnotation*)annotation;
说明
批注对象删除
参数
参数 是否必须 说明
annotation 批注对象
返回值
void
备注
获取当前批注类型
属性
currentAnnotationType
说明
当前正在操作的批注类型
参数
返回值
void
备注
完成回调
接口
finishMeasure
说明
完成一次完整的测量流程后,回调
参数
返回值
void
备注
sviewBase.measures.finishMeasure = ^(SMeasure * _Nonnull measure) {};
执行命令
接口
- (void) doMeasureCommand:(int)type;
说明
执行批注命令
参数
参数 是否必须 说明
type 命令类型
返回值
void
备注
类型包含距离、角度、属性等,手势批注和语音批注暂时属于测量的一种,类型详见SMeasure.h中
关闭命令
接口
- (void) closeMeasureCommand;
说明
关闭测量命令
参数
返回值
void
备注
获取所有对象
接口
- (NSArray*)getAll;
说明
获取所有测量对象
参数
返回值
void
备注
清空
接口
- (void)clear;
说明
清空所有对象
参数
返回值
void
备注
添加
接口
- (void)add:(SMeasure*)measure;
说明
把对象添加到管理中,以便于关闭文件是清除,以及拾取等
参数
参数 是否必须 说明
measure 测量对象
返回值
void
备注
删除
接口
- (void)remove:(SMeasure*)measure;
说明
批注对象删除
参数
参数 是否必须 说明
measure 测量对象
返回值
void
备注
获取当前测量类型
属性
currentMeasureType
说明
当前正在操作的测量类型
参数
返回值
void
备注
创建
接口
- (SHotSpot*)create:(CGPoint)point;
说明
在屏幕点位置下,创建热点对象,仅添加图标显示,未做响应事件的关联。
参数
参数 是否必须 说明
point 屏幕点
返回值
SHotSpot
备注
仅添加图标显示,未做响应事件的关联。
删除
接口
- (void) remove:(SHotSpot*)hotSpot;
说明
删除热点,仅删除显示和管理,不会从文件中删除,下次打开还会出现。
参数
参数 是否必须 说明
hotSpot 热点
返回值
void
备注
仅从显示层删除,不会改变原始文件。
创建图标
接口
- (void) createImage:(SHotSpot*)hotSpot;
说明
创建热点对象的显示,添加图标。
参数
参数 是否必须 说明
hotSpot 热点
返回值
void
备注
创建完成后,热点对象的hotspotImage即为生成对象。
根据名称获取热点列表
接口
- (NSArray *)getHotSpotsByName:(NSString *)pName;
说明
获取指定名称的热点对象列表
参数
参数 是否必须 说明
pName 名称
返回值
NSArray
备注
热点名称不是热点的唯一标示
根据ID获取热点
接口
- (SHotSpot *)getHotSpotByID:(int)iID;
说明
根据ID获取热点对象
参数
参数 是否必须 说明
iID 热点ID
返回值
SHotSpot
备注
获取模型上的热点列表
接口
- (NSArray *)getHotSpotsByModel:(SModel *)model;
说明
获取指定模型上的热点对象列表
参数
参数 是否必须 说明
model 指定模型
返回值
NSArray
备注
根据M3d路径获取对于模型上的热点列表
接口
- (NSArray *)getHotSpotsByM3DPath:(NSString *)m3dPath;
说明
根据M3d路径获取对于模型上的热点列表
参数
参数 是否必须 说明
m3dPath 模型M3d路径
返回值
NSArray
备注
获取全部热点列表
接口
- (NSArray *)getSHotSpotList;
说明
获取所有热点对象列表
参数
返回值
NSArray
备注
清空数据
接口
- (void) clearData;
说明
清空热点数据以及缓存到可读路径下的热点资源(图片等)
参数
返回值
void
备注
不影响文件本身数据
执行Action
接口
- (BOOL) executeAction:(SHotSpot*)hotSpot withDefineAction:(void (^)(void))action;
说明
执行热点的响应时间,如存在多个动作只执行第一个。如果没有,则执行Action回调,自行处理。
参数
参数 是否必须 说明
hotSpot 热点对象
返回值
BOOL
备注
热点动作类型:OpenFile:打开文件操作、OpenWeb:打开网页、OpenFtp:打开指定Ftp位置、PlayAnimation:播放动画、OpenView:打开视图、HighlightParts:高亮零件