当前位置: 首页 > news >正文

如何做网站的源码如何找外链资源

如何做网站的源码,如何找外链资源,有没有做链接的网站吗,什么网站做污水处理药剂的好前言 AIS_ManipulatorOwner是OpenCascade中的一个类,主要用于操纵对象的交互控制。AIS_ManipulatorOwner结合AIS_Manipulator类,允许用户通过可视化工具(如旋转、平移、缩放等)来操纵几何对象。 以下是AIS_ManipulatorOwner的基…

在这里插入图片描述

前言

AIS_ManipulatorOwner是OpenCascade中的一个类,主要用于操纵对象的交互控制。AIS_ManipulatorOwner结合AIS_Manipulator类,允许用户通过可视化工具(如旋转、平移、缩放等)来操纵几何对象。

以下是AIS_ManipulatorOwner的基本用法介绍:

1. 包含必要的头文件

首先,确保在代码中包含必要的OpenCascade头文件:

#include <AIS_ManipulatorOwner.hxx>
#include <AIS_InteractiveContext.hxx>
#include <AIS_Shape.hxx>
#include <AIS_Manipulator.hxx>
#include <TopoDS_Shape.hxx>
#include <BRepPrimAPI_MakeBox.hxx>
#include <V3d_View.hxx>

2. 创建几何对象和上下文

创建一个几何对象,并初始化一个AIS_InteractiveContext

Handle(AIS_InteractiveContext) context = ...; // 已初始化的交互上下文
TopoDS_Shape aShape = BRepPrimAPI_MakeBox(100.0, 100.0, 100.0).Shape();
Handle(AIS_Shape) aShapeAIS = new AIS_Shape(aShape);
context->Display(aShapeAIS, Standard_True);

3. 创建和设置Manipulator

创建一个Manipulator,并将其与几何对象关联:

Handle(AIS_Manipulator) aManipulator = new AIS_Manipulator();
aManipulator->SetComponent(aShapeAIS);
context->Display(aManipulator, Standard_True);

4. 创建ManipulatorOwner

创建一个AIS_ManipulatorOwner,并将其与Manipulator关联:

Handle(AIS_ManipulatorOwner) aManipulatorOwner = new AIS_ManipulatorOwner(aManipulator, context);

5. 操纵几何对象

通过ManipulatorOwner,可以对几何对象进行旋转、平移和缩放等操作。例如:

gp_Trsf transformation;
transformation.SetTranslation(gp_Vec(10.0, 0.0, 0.0)); // 平移10单位
aManipulatorOwner->SetLocalTransformation(transformation);
context->Redisplay(aShapeAIS, Standard_True);

6. 交互操作

用户可以通过鼠标操作与几何对象进行交互。AIS_InteractiveContext提供了许多方法来处理鼠标事件并相应地更新几何对象的位置。

// 示例:处理鼠标点击事件
void OnMouseClick(const Handle(V3d_View)& aView, Standard_Integer x, Standard_Integer y) {context->MoveTo(x, y, aView);if (context->HasDetected()) {Handle(AIS_InteractiveObject) detectedObj = context->DetectedInteractive();if (!detectedObj.IsNull() && detectedObj == aShapeAIS) {// 选中了几何对象context->StartTransformation(aView, x, y);}}
}

总结

AIS_ManipulatorOwner是一个强大的工具,可以帮助用户通过图形界面与几何对象进行交互。通过设置适当的变换矩阵,可以实现对对象的各种操作,从而极大地增强了用户的交互体验。

AIS_MediaPlayer

在这里插入图片描述
视频播放演示。

方法

1

空构造函数。
Standard_EXPORT AIS_MediaPlayer();

2

析构函数。
Standard_EXPORT virtual ~AIS_MediaPlayer();

3

设置回调函数,用于在队列进度时调用(例如,当需要显示新帧时)。
void SetCallback (Graphic3d_MediaTextureSet::CallbackOnUpdate_t theCallbackFunction, void* theCallbackUserPtr)
{
myFramePair->SetCallback (theCallbackFunction, theCallbackUserPtr);
}

4

打开指定文件。
Standard_EXPORT void OpenInput (const TCollection_AsciiString& thePath,
Standard_Boolean theToWait);

5

显示新帧。
Standard_EXPORT bool PresentFrame (const Graphic3d_Vec2i& theLeftCorner,
const Graphic3d_Vec2i& theMaxSize);

6

返回播放器上下文。
const Handle(Media_PlayerContext)& PlayerContext() const { return myFramePair->PlayerContext(); }

7

切换播放状态。
Standard_EXPORT void PlayPause();

8

安排关闭播放器。
void SetClosePlayer()
{
myToClosePlayer = true;
myFramePair->Notify();
}

9

返回持续时间。
double Duration() const { return myFramePair->Duration(); }

//! @name AIS_InteractiveObject 接口
protected:

10

仅接受显示模式0。
virtual Standard_Boolean AcceptDisplayMode (const Standard_Integer theMode) const Standard_OVERRIDE { return theMode == 0; }

11

计算演示文稿。
Standard_EXPORT virtual void Compute (const Handle(PrsMgr_PresentationManager)& thePrsMgr,
const Handle(Prs3d_Presentation)& thePrs,
const Standard_Integer theMode) Standard_OVERRIDE;

12

计算选择。
Standard_EXPORT virtual void ComputeSelection (const Handle(SelectMgr_Selection)& theSel,
const Standard_Integer theMode) Standard_OVERRIDE;

13

更新帧大小。
Standard_EXPORT bool updateSize (const Graphic3d_Vec2i& theLeftCorner,
const Graphic3d_Vec2i& theMaxSize);

参考

http://www.zhongyajixie.com/news/33617.html

相关文章:

  • 企业应该如何建设自己的网站百度一下官网首页登录
  • 网站建设教案手机优化软件哪个好
  • 方圆网 网站建设建设网站
  • 生鲜网站开发背景品牌营销策划案例
  • 怎么做淘宝联盟网站信息流广告的特点
  • canvas 特效网站选择一个产品做营销方案
  • dede做英文网站优化百度联盟广告收益
  • 怎样开一个小外贸公司seo教学网seo
  • 在越南做网站需要什么站长素材音效网
  • 做视频投稿赚钱的网站好b2b有哪些电商平台
  • 企业官方网站建设规划电子商务网站
  • 网站建设实习生怎么样凡科建站官网
  • 做网站怎样更改背景百度seo排名报价
  • 丹东淘宝做网站建站之星网站
  • 国内工程机械行业网站建设现状销售新人怎么找客户
  • 遵义专业建站山西疫情最新情况
  • 免费开网店的一件代发seo网站推广是什么
  • nas服务器 做网站四平网站seo
  • 长沙做网站的故事免费留电话号码的广告
  • 多种东莞微信网站建设百度纯净版首页入口
  • 北京网站建设联系电话网站推广专家十年乐云seo
  • 重庆网站建站系统平台南通做网站推广的公司
  • 免费使用wordpress教程推广优化网站排名
  • 马蜂窝网站建设目的百度百度
  • 武汉做网站的公司有哪些比较好百度网站推广
  • 中企动力济南分公司镇江优化推广
  • 企业做网站的优势引流推广方法
  • 冬青街 做网站seo软件下载
  • 2免费做网站专业seo培训学校
  • php做简单网站教程视频株洲seo排名