【仿真建模-anylogic】MarkupSegment代码解析

news2024/12/25 15:58:50
Author:赵志乾
Date:2024-06-25
Declaration:All Right Reserved!!!

1. 类图

2. 代码解析

//***********************核心字段************************
// MarkupSegment起点坐标
double startX;
double startY;
double startZ;
double endX;
double endY;
double endZ;

//***********************构造函数**************************
// 指定MarkupSegment的起止点坐标
MarkupSegment(double startX, double startY, double startZ, double endX, double endY, double endZ) {
	this.startX = startX;
	this.startY = startY;
	this.startZ = startZ;
	this.endX = endX;
	this.endY = endY;
	this.endZ = endZ;
}
// 设置MarkupSegment起点坐标
public final void setStart(double x, double y, double z) {
	// MarkupSegment在initialize之后不允许再修改
	this.checkForModify();
	this.startX = x;
	this.startY = y;
	this.startZ = z;
}
// 设置MarupSegment终点坐标
public final void setEnd(double x, double y, double z) {
	// MarkupSegment在initialize之后不允许再修改
	this.checkForModify();
	this.endX = x;
	this.endY = y;
	this.endZ = z;
}

//*******************************MarkupSegment上的点**************************
// 获取MarkupSegment的长度
public final double length() {
	return super.length();
}
// 获取距离起点偏移量为offset的点坐标
public final Position getPositionAtOffset(double offset, Position out) {
	// 校验offset是否合法
	if(offset< -1.0E-4 || offset>this.length()+1.0E-4){
		error("offset is out of range!");
	}
	
	if(out==null){
		out = new Position();
	}
	// 子类决定计算方式
	this.getPositionAtOffsetInternal(offset, out);
	return out;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1859729.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL如何实现事务特性

目录 事务有那些特性 原子性如何实现 持久性如何实现 隔离性与一致性如何实现 事务有那些特性 事务是由MySQL的引擎 InnoDB 来实现的 事务的特性 : 原子性 不存在中间状态,要么完成,要么不完成 一致性 事务操作前和操作后,数据满足完整性的约束,数据库保持一致的状态…

mac鼠标和触摸屏单独设置滚动方向

引言&#xff1a;mac很好用&#xff0c;但是外接鼠标的滚动方向和win不一样&#xff0c;总有点不习惯。于是想要设置一下&#xff0c;当打开设置&#xff0c;搜索鼠标时&#xff0c;将“自然滚动”取消&#xff0c;就可以更改了。 问题&#xff1a;但触摸屏又不好用了。 原因&a…

VBA递归过程快速组合数据

实例需求&#xff1a;数据表包含的列数不固定&#xff0c;有的列&#xff08;数量和位置不固定&#xff09;包含组合数据&#xff0c;例如C2单元格为D,P&#xff0c;说明Unit Config有两种分别为D和P&#xff0c;如下图所示。 现在需要将所有的组合罗列出来&#xff0c;如下所示…

模块化沙箱结合零信任实现一机两用解决方案

为实现数据防泄露的各类型市场需求以及“一机两用”标准落地&#xff0c;依靠十几年的沙箱技术积累&#xff0c;研发出了支持多平台的模块化沙箱&#xff0c;配合零信任SDP网关&#xff0c;提高数据安全&#xff0c;实现“一机两用”安全解决方案。 产品特点 -自2008年开始已…

奇点临近:人类与智能时代的未来

在信息爆炸的时代&#xff0c;我们每天都被海量的信息所淹没&#xff0c;如何才能在这个嘈杂的世界中找到真正有价值的信息&#xff1f;如何才能利用信息的力量&#xff0c;提升我们的认知水平&#xff0c;重塑我们的未来&#xff1f; 这些问题的答案&#xff0c;或许都能在雷…

基于MindSpore Quantum的Grover搜索算法和龙算法

如果你听过量子计算&#xff0c;那么你一定听说过Grover搜索算法。1996年&#xff0c;Lov Grover [1] 提出了Grover搜索算法&#xff0c;它是一种利用量子状态的叠加性进行并行计算并实现加速的算法。Grover搜索算法被公认为是继Shor算法后的第二大量子算法&#xff0c;也是第一…

【仿真建模-解析几何】求有向线段上距指定点最近的坐标

Author&#xff1a;赵志乾 Date&#xff1a;2024-06-25 Declaration&#xff1a;All Right Reserved&#xff01;&#xff01;&#xff01; 问题描述&#xff1a; 有向线段起点A为&#xff08;x1&#xff0c;y1&#xff09;&#xff0c;终点B为&#xff08;x2&#xff0c;y2&a…

图片详解 —— 二维树状数组

\qquad 想要完全理解二维树状数组&#xff0c;要先完全理解一维树状数组。这里给大家推荐一个视频&#xff1a;五分钟丝滑动画讲解 | 树状数组。建议大家先看一遍视频再来看下面的讲解。 \qquad 在一维树状数组中&#xff0c; t r e [ i ] tre[i] tre[i] 可以理解为以 i i i 为…

MySQL集群高可用架构之双主双活+keepalived

该教程再linux系统下 从部署单台mysql -->到部署两台双主mysql-->再到安装keepalived-->整体测试 从而实现mysql双主双活高可用的目标。 改文档由本人亲自部署搭建一步一步编写而来&#xff0c;实属不易&#xff0c;如对您有所帮助&#xff0c;请收藏点个赞&#x…

装机必备一WinRAR安装使用以及常见问题

WinRAR是一款功能强大的压缩包管理器&#xff0c;支持多种压缩格式&#xff0c;如RAR、ZIP等。作为一款经典且广泛使用的压缩软件&#xff0c;WinRAR不仅在文件压缩率和速度方面表现出色&#xff0c;还提供了备份数据、缩减电子邮件附件大小以及解压缩网络下载文件等功能。 为…

瑜伽馆管理系统的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;管理员管理&#xff0c;教练管理&#xff0c;用户管理&#xff0c;瑜伽管理&#xff0c;套餐管理&#xff0c;体测报告管理&#xff0c;基础数据管理 前台账户功能包括&#xff1a;系统首页&#xff0…

计网入门还没到放弃

TCP报文段格式 源端口&#xff1a;标识报文的返回地址 目的端口&#xff1a;指明计算机上的应用程序接口 序号&#xff1a;通过SYN包传给接收端主机&#xff0c;每传送一次就1&#xff0c;用来解决网络包乱序的问题。 确认号&#xff1a;期望下一次收到的数据的序列号&#xff…

lvm,磁盘配额

文章目录 LVM概述Logical Volume Manager逻辑卷管理LVM机制的基本概念 LVM的管理命令LVM应用实例案例环境需求描述创建 LVM创建, 删除LVM 流程创建 LVM 流程删除 LVM 流程 磁盘配额概述实现磁盘限额的条件Linux 磁盘限额的特点 磁盘配额管理CentOS7设置磁盘配额步骤编辑用户和组…

61.指针和二维数组(1)

目录 一.回顾 二.思考 三.实验验证 四.视频教程 一.回顾 在一维数组中&#xff0c;一维数组的数组名就是一维数组中首个元素的地址。若有int a[5]&#xff1b;int *p&#xff1b;则p&a[0]可以简写成pa&#xff1b; 在C语言中&#xff0c;二维数组如int a[2][2]{1,2,3,4…

英语口语练习评测的开发实现

英语口语评测是一个复杂的系统&#xff0c;需要综合考虑语音识别、语音评测、自然语言处理等多种技术。以下是一些常见的英语口语评测开发框架。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 基于语音识别的口语评测框架这种框架主要…

Python | Leetcode Python题解之第189题轮转数组

题目&#xff1a; 题解&#xff1a; def reverse(nums: List[int], left, right) -> None:i, j left, rightwhile i < j:nums[i], nums[j] nums[j], nums[i]i1j-1 class Solution:def rotate(self, nums: List[int], k: int) -> None:n len(nums)k % nreverse(num…

运行时库链接方式实践指南(MT、MD、MTd、MDd)

前言 笔者曾经编译一个库提供给使用者&#xff0c;提供库后发现由于运行时库连接方式不一致&#xff0c;导致使用者无法连接笔者提供的库。另一方面&#xff0c;理解和选择正确的运行时链接方式对于构建高效、可靠的应用程序至关重要。 因此&#xff0c;本文将展开运行时库的基…

web前端课程设计——农产品购物车

该课程设计使用的环境为:HTMLcssJavaScript,vue3,creat-vue脚手架工具&#xff0c;vscode编辑器 其中实现的功能为:购物车管理&#xff0c;商品展示。 1.购物车管理中包含对商品数量进行加减&#xff0c;对商品进行全选或反选操作&#xff0c;删除单个商品或批量删除商品。 …

C++ | Leetcode C++题解之第189题轮转数组

题目&#xff1a; 题解&#xff1a; class Solution { public:void reverse(vector<int>& nums, int start, int end) {while (start < end) {swap(nums[start], nums[end]);start 1;end - 1;}}void rotate(vector<int>& nums, int k) {k % nums.size…

Android AOSP 编译并烧录到Google Pixel4XL

简介 AOSP&#xff08;Android Open Source Project&#xff09;是Android系统的开源版本&#xff0c;任何人都可以下载、编译和修改。手头上有一台Pixel 4XL&#xff0c;尝试编译AOSP并将其烧录到的设备上。 准备工作 在开始之前&#xff0c;您需要确保您的电脑满足以下条件…