简单无聊的Minecraft主世界与地狱坐标转换器

作品信息

名称:Minecraft坐标转换器
编译工具:VisualBasic6.0
程序员:Morgan
邮箱:1037502595@qq.com
     MorganFish0508@163.com
GitHub:https://github.com/MorganNotFound
CSDN:https://blog.csdn.net/MorganFish
由于作者csdn属于测试阶段,并无多少作品上传,但依旧希望大家多多支持,作者将会继续努力哒~

创作背景

不知道吧,本人其实是位资深的MC老玩家hhh…
课余时间多么无聊啊,总得找点乐子不是?Minecraft是个好选择。作为非职业专业玩家的我强烈推荐Minecraft,玩的同时其实还可以同时学习编程、建筑(当然啦,一定要玩国际服正版,自主操作性高,某易实在不行,小学生太多,没/缺钱的可以下载一个hmcl……)
扯得有点偏了抱歉,所以说为什么我要做这个小程序呢?不知道大家有没有遇到以下问题:

   (一)两个地狱门传送到同一地点;
   (二)地狱矿车没有从指定地点出来;
   (三)知道一个传送门的坐标,却不知道另一个的坐标还没有足够黑曜石导致迷路;
   (四)需要知道某个出口的坐标以便于确认地形&生物群系;

这些解决起来非常简单,其实这一切问题的产生都是由于地狱与主世界的坐标成1:8的关系,也就是说,地狱里走一格方块,相对在主世界移动了八格,这也就是为什么许多人选择地狱矿车来赶路,但为什么需要这个程序呢?很简单嘛,懒得算呗……
好啦,接下来就上代码吧!

代码

非常简单,认识了vb全部控件之后以小学生的智商就可以制作了,可更改性也很高,如果愿意也可以随意加以改进,作品嘛,本就不该有局限性

Private Sub Command1_Click()
Let x = Text1.Text
Let y = Text2.Text
Let z = Text3.Text
If Combo1.Text = ("地狱-主世界") Then
x = x * 8
y = y * 8
z = z * 8
Text1.Text = x
Text2.Text = y
Text3.Text = z
Label5.Caption = "LET'S GO HOME!"
ElseIf Combo1.Text = ("主世界-地狱") Then
x = x / 8
y = y / 8
z = z / 8
Text1.Text = x
Text2.Text = y
Text3.Text = z
Label5.Caption = "GO TO THE HELL!"
Else
Label5.Caption = "未知的转换方法,请重新输入"
End If
End Sub
Private Sub Form_Load()
Combo1.AddItem ("地狱-主世界")
Combo1.AddItem ("主世界-地狱")
End Sub
Private Sub command2_click()
End
End Sub

不长,代码雀食不长,接下来就让我“手把手”教你制作吧!

手把手教你制作

主要运用到的控件:

label1~5             '用来显示文本
Command1~2           '控制开始与结束
Text1~3              '用来输入x,y,z坐标
Combo1               '增加转换类型的选项

辅助控件:

Image1               '增加logo图标
WindowsMediaPlayer1  '添加软件背景音乐

如图,对一些字体、颜色之类的属性可以进行随意更改:
在这里插入图片描述

我将form1的BackColor改为黑色,控件forecolor改为白色,然后将所有控件的BackStyle都改为了透明,故呈现出来的效果对比度高,也可以不做更改,不影响程序运行
主要流程:

   (一)按顺序插入控件
   (二)插入代码
   (三)运行

尝试运行一下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

我呢,不仅添加了一个Image,还添加了一个背景音乐,使用的是WindowsMediaPlayer控件(添加方法可以自己查询),使用方法很简单:
首先在form1_load里面添加如下代码:

WindowsMediaPlayer1.URL = App.Path + "\Minecraft.mp3"
WindowsMediaPlayer1.Enabled = True
WindowsMediaPlayer1.Visible = False

使用时要将Minecraft.mp3与编写好的exe放在一起,很多人会觉得在工程里预览的时候音乐没有加载出来是程序或者音乐的问题,其实不然,仔细回看一下程序代码:App.Path表示程序位置,如果没有将mp3与工程放在一个文件夹里就不能加载出来,也就是说,用什么运行就要把音乐和什么放在一起。
如果要背景音乐循环播放,也很简单,只需添加上以下代码:

Private Sub WindowsMediaPlayer1_PlayStateChange(ByVal NewState As Long)
If NewState = 1 Then
WindowsMediaPlayer1.Controls.play
End If
End Sub

好啦,程序基本上就做完啦!
如果不想动手,直接使用我做的exe就好啦!
再想想有没有什么遗漏的……
哦忘了忘了,谢谢您的支持~

好啦,程序基本上就做完啦!
如果不想动手,直接使用我做的exe就好啦!

下载地址

作者的GitHub

附言

再想想有没有什么遗漏的……
哦忘了忘了,谢谢您的支持~
如果喜欢,点赞+星标+关注哦~

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
安装后c盘有源代码。 高速公路坐标高程计算软件 高速公路坐标高程计算软件是在多年的施工放样工作中总结出来的一个很有效的程序。 它是公路、铁路施工放样的好助手,可以帮你完成以前你用很大的精力和时间完成的计算。 它能在工作中给予很大的方便,使你能从繁琐的计算工作中解脱出来,你只要按要求将已 知的几个数据输入即可,并大大的提高了计算精确性和准确性。操作简便、实用,适合采 用坐标法放样,如具有全站仪和测距仪的测量放线工作,快速准确定位,很有推广价值。 高速公路坐标高程计算软件可以帮你完成直线、圆曲线、缓和曲线(完全缓和曲线和 不完全缓和曲线)、S形曲线、复曲线、试车场高速环道布劳斯曲线的中桩和任意长度、任 意角度边桩坐标和高程的计算,并可根据你有要求加任意点的坐标。计算方法根据曲线是 否完整对称可以选择交点法计算和特殊点计算方法。生成的坐标成果可以直接通过数据线 导入全站仪,也可以导入Excel中便于打印,导入AUTOCAD中生成DWG图形,根据线形是否平 顺来检验坐标准确性。 高速公路坐标高程计算软件应用于公路、铁路、等坐标高程计算,可用来计算桥梁桩基、 立柱、支座垫石、护栏、桥面系及涵洞通道坐标高程,可计算试车场高速环道布劳斯曲线坐 标,是施工放样和图纸坐标高程复核的好帮手,还可以用来复核工程上广泛应用的可编程计 算CASIO 5800坐标高程避免出错。 他是一个免费软件,没有任何限制。附送CASIO4850,5800程序及算法。 下载地址:天空软件站,搜索高速公路坐标高程计算。 本软件简要说明: 一、线元法计算平曲线(程序) 1、J为起算点里程,C、D为起算点的X、Y坐标,F为起算点的切线方位角,R为圆曲线半径 (左偏取负,右偏取正),A、B为第一、第二缓和曲线回旋参数,O为圆曲线长度,Ki为该 分段的终点里程; 2、对于直线段或圆曲线段,起算点可取直线或圆曲线上的任意一点; 3、对于带第一、第二缓和曲线的平曲线段,起算点应取HY点; 4、K为所求点的里程,T、P为第一偏距、偏角,S、Z为第二偏距、偏角,偏角取从该点的 切线顺时针旋转的夹角; 5、分段法则:直线单独分段;单一的圆曲线单独分段;缓和曲线1+圆曲线+缓和曲线2为一 个整体单独分段,若不存在第一或第二缓和曲线(即不完全缓和曲线)仍然可以计算; 若不存在圆曲线,则O取零; 6、对于两圆夹一段缓和曲线分段这种类型,缓和曲线应该分到半径较小的那个圆上,因为 程序算法本来就是从HY和YH点小半径R向大半径∞方向进行推算的,不同于以往从ZH或HZ点计算, 从ZH或HZ点推算是从大半径∞向小半径R方向进行推算的。 这种情况下回旋参数A=根号下√abs(Ls*R1*R2/(R1-R2)),Ls为缓和曲线长,R1,R2为半径。 7、若第一或者第二缓和曲线不存在,此时A或B可取零; 8、F、Q切线方位角输入输出均为度.分秒的格式,例如153°24′05.24″=153.240524。 Q改变时,可按照新方位角为基准,结合第一第二偏距、偏角重新计算所求点; 9、输入平曲线参数后,默认为计算全线坐标,可修改来计算某段曲线,默认间距也可修改; 10、可参考CAD图《平曲线计算图例》; 11、生成的中桩CAD脚本设置成在世界坐标系下生成,注意的是世界坐标系与大地测量坐标系 的区别是XY坐标是互换的,否则画出的图形与实际相反。先打开CAD,设置好图层名称、颜色, 并设置为当前层,然后单击CAD的工具==>运行脚本==>选中生成的脚本文件即可。 12、输出的坐标结果可以导入到EXCEL中,操作办法为:打开EXCEL,然后把坐标数据复制到 单元格里,然后单击数据==>分列==>选中分隔符号==>下一步==>选中TAB键和逗号==>下一步 ==>完成即可。下一次可直接在此表中粘贴,数据自动分列。 二、缓和曲线计算(辅助程序) 1、本程序为辅助程序,用来从ZH点或HZ点计算整条完全的缓和曲线, 若不知道HY点X、Y、Q参数,可用此程序计算出来,然后输入平曲线参数; 2、参数设置参考平曲线计算; 3、导出到EXCEL的办法同平曲线计算; 三、直线计算(辅助程序) 1、本程序为辅助程序,若已知P1(X1,Y1),P1-->P2的距离I及方位角J(度.分秒格式), 可计算坐标P2(X2,Y2)。 四、方位角计算 1、已知两点的坐标,可计算P1-->P2的距离及方位角; 2、角度可以进行加减运算。(单位:度.分秒格式) 五、竖曲线计算(程序) 1、J为起算点里程,Y为起算点的高程,R为圆曲线半径(取绝对值),E、F为第一、 第二坡度,不带%号,例如2.5%的坡度就输入2.5,上坡取正值,下坡取负值; 2、K为所求点的里程,T为边桩到设计高程点的斜距,I为横坡,向外流水取正, 向中心流水取负,G为边桩的高程; 3、分段法则:以两竖曲线之间直线段中间的任意一点为分界,如上图中的K1、K2、K3; 注意分离式路基一般要单独分段,分段时如果从起点就开始变坡,第一个分段起点必须 与终点里程应相同或小1毫米,否则程序不能计算第一个分段的横坡; 4、无论任何时候R不能取零,否则可能导致被零除的错误; 5、可参考CAD图《竖曲线计算图例》; 6、导出到EXCEL的办法同平曲线计算; 六、交点法点计算平曲线(辅助程序) 1、交点法计算平曲线功能,是用来计算对称的完全缓和曲线的,如果特征点里程与图纸不符, 必须查明原因,比如是由断链或者不完全缓和曲线引起的。 一般地,匝道用线元法,线用交点法,因为匝道的线型不一定是标准的交点法线型,如果不是标准的交点法线型,用常规方法推算是不对的,交点法适用于缓1+圆+缓2这种线型,对于缓1+圆1+缓2+圆2这种,缓2是分到圆1还是圆2上是有区别的,如果缓2分到半径小的圆上就适用交点法,反之则不适用。 2、最后一个交点如果R、Ls、T、L如果不知道,R随便输入一个不为零的数字比如111, Ls、T、L输入零就可以了。 七、其他说明 1、本程序是在WINXP下编译的,如果在WIN98、WIN2000下运行提示少DLL文件的话可以从网 上下载,拷贝到%windir%\system及system32目录,并用示例的格式来注册。 2、本软件由心梦(QQ704728827)和陈晓猫(QQ43308724)共同编写完成,有错误欢迎指正。 EMAIL:[email protected]
LayaAir引擎提供了两个函数用于世界坐标与本地坐标的转换,分别是: 1. `pointToLocal(point: Point, createNewPoint?: boolean, global?: boolean): Point` 该函数用于将世界坐标系中的点转换为当前节点的本地坐标系中的点。 参数解释: - `point`:要转换的点。 - `createNewPoint`:是否创建一个新的点对象,如果为 true,则返回一个新的点对象,否则会修改传入的 point 对象。默认为 false。 - `global`:是否使用全局坐标系进行计算。默认为 false,即使用本地坐标系进行计算。 示例代码: ```typescript // 获取当前节点 let node = this.owner; // 创建一个世界坐标系中的点 let worldPoint = new Laya.Point(100, 100); // 将世界坐标系中的点转换为本地坐标系中的点 let localPoint = node.pointToLocal(worldPoint); ``` 2. `localToGlobal(point: Point, createNewPoint?: boolean, global?: boolean): Point` 该函数用于将当前节点的本地坐标系中的点转换为世界坐标系中的点。 参数解释: - `point`:要转换的点。 - `createNewPoint`:是否创建一个新的点对象,如果为 true,则返回一个新的点对象,否则会修改传入的 point 对象。默认为 false。 - `global`:是否使用全局坐标系进行计算。默认为 false,即使用本地坐标系进行计算。 示例代码: ```typescript // 获取当前节点 let node = this.owner; // 创建一个本地坐标系中的点 let localPoint = new Laya.Point(100, 100); // 将本地坐标系中的点转换为世界坐标系中的点 let worldPoint = node.localToGlobal(localPoint); ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值