当前位置:首页 > 经验 >

罗马时钟做法(手工时钟高级做法)

来源:原点资讯(www.yd166.com)时间:2025-05-05 11:46:19作者:YD166手机阅读>>

罗马时钟做法,手工时钟高级做法(1)

要制作罗马时钟,首先需要准备一个圆形的木板作为时钟的底座,然后将圆形木板分成12个等分,代表12个时辰。

接下来,需要准备12个小的罗马数字标识,分别代表1到12点的时间。将这些罗马数字标识固定在相应的位置上。

接着,可以在时钟的中心位置安装一个时针和一个分针,用来显示时间。

最后,可以根据个人喜好来进行装饰,比如在时钟的周围绘制花纹或者涂上喜欢的颜色。这样一个罗马时钟就制作完成了。

制作思路:1. 文本的放置位置。2.时间的获取 和校正。 3. Text随着时间的刷新 而刷新位置

主要思路 就这些,然后就是 一些动画 效果。刚开始功能出来的时候,是没有 旋转那个动画的,看上去 很low。。。

后面加了个 补间动画。

核心代码:拿月份 来说,下面 是初始化代码,就是 位置的放置。

private void InitMonthes()

{

int monthesLen = Monthes.Length;

float radius = 100.0f;

float posX = 0;

float posY = 0;

float angel = 360.0f / monthesLen;

GameObject tempObj;

for (int i = 0; i < monthesLen; i++)

{

posX = _middlePoint.localPosition.x + radius * Mathf.Cos((monthesLen - i) * angel * Mathf.Deg2Rad);

posY = _middlePoint.localPosition.y + radius * Mathf.Sin((monthesLen - i) * angel * Mathf.Deg2Rad);

tempObj = TextFactory(_monthesTrans);

tempObj.GetComponent<Text>().text = Monthes[i];

tempObj.GetComponent<TextState>().Init(new Vector3(posX, posY, 0), 0.5f);

//tempObj.transform.localPosition = new Vector2(posX, posY);

tempObj.transform.Rotate(transform.forward, (monthesLen - i) * angel);

}

}

下面这个是月份的校正

private void FixMonth(bool isInit = false)

{

int month = System.DateTime.Now.Month;

_nowMonth = month;

if (isInit)

{

_monthesTrans.transform.Rotate(transform.forward, 360.0f / Monthes.Length * (month - 1));

}

else

{

//_monthesTrans.transform.Rotate(transform.forward, 360.0f / Monthes.Length);

_monthesTrans.transform.DORotate(new Vector3(0, 0, _monthesTrans.eulerAngles.z + 360.0f / Monthes.Length), 0.8f);

}

if (month - 2 < 0)

{

_monthesTrans.GetChild(Monthes.Length - 1).GetComponent<TextState>().SetNormal();

}

else

{

_monthesTrans.GetChild(month - 2).GetComponent<TextState>().SetNormal();

}

_monthesTrans.GetChild(month - 1).GetComponent<TextState>().SetHighLight();

}

在Update里面 每帧去检测时间,发生改变 然后去校正 相应的 部分。核心部分代码 就只有这些。个人觉得只是一些角度的计算,后面可以 改进一下,让秒针 转动 带动 里面 的转动,那样就更像表了,有兴趣的朋友可以试试。

栏目热文

钟表上的罗马数字怎么看时间(钟表上的时间有几种表示方法)

钟表上的罗马数字怎么看时间(钟表上的时间有几种表示方法)

有长短针、短针小时、长针分钟。老式钟表的数字是用罗马字表示的,1~3是很好识别,1竖代表1、2竖代表2、3竖代表3,V代...

2025-05-05 11:22:03查看全文 >>

柬埔寨货币面值(100瑞尔在柬埔寨能买到什么)

柬埔寨货币面值(100瑞尔在柬埔寨能买到什么)

      柬埔寨货币面值包括100、500、1000、2000、5000、10000、5...

2025-05-05 10:23:00查看全文 >>

柬埔寨100万能兑多少越南币(柬埔寨100万换人民币多少钱)

柬埔寨100万能兑多少越南币(柬埔寨100万换人民币多少钱)

1000000柬埔寨可兑换 5761300越南盾。柬埔寨瑞尔,又称:利尔斯,柬埔寨法定货币。是国际货币基金组织委员会成员...

2025-05-05 10:17:42查看全文 >>

柬埔寨货币100元在当地能买个啥东西(100人民币在柬埔寨能买到什么)

柬埔寨货币100元在当地能买个啥东西(100人民币在柬埔寨能买到什么)

100瑞尔相当于人民币一毛六,在金边也就买一盒火柴吧。估计一个烧饼只能买个面包可以吃顿早餐。100柬埔寨瑞耳元,一个人只...

2025-05-05 11:07:42查看全文 >>

柬埔寨100瑞尔能买啥(柬埔寨100瑞尔是多少钱)

柬埔寨100瑞尔能买啥(柬埔寨100瑞尔是多少钱)

100瑞尔相当于人民币一毛六,在金边也就买一盒火柴吧。估计一个烧饼只能买个面包可以吃顿早餐。100柬埔寨瑞耳元,一个人只...

2025-05-05 10:04:28查看全文 >>

经常在钟表上看到古罗马的数字 请问这些数字的排序方法 如何计数 是什么(钟表上罗马数字正确写法)

经常在钟表上看到古罗马的数字 请问这些数字的排序方法 如何计数 是什么(钟表上罗马数字正确写法)

罗马数字起源于罗马,比阿拉伯数字早2000多年,是欧洲在阿拉伯数字传入之前使用的一种数码,现在的应用比较少。但是,它的产...

2025-05-05 12:08:58查看全文 >>

女孩的眼睛简笔画怎么画(温柔女生眼睛怎么画简笔画)

女孩的眼睛简笔画怎么画(温柔女生眼睛怎么画简笔画)

如果不想通过医学的方法,女孩子大可以 化妆 修饰呀!教你两种方法:第一种化妆法:从上轮廓线起,用暗灰或灰色在上面晕染,眼...

2025-05-05 10:51:51查看全文 >>

眼睛简笔画怎么画(一二三年级画眼睛)

眼睛简笔画怎么画(一二三年级画眼睛)

1.准备纸和黑色的彩笔。2.先用笔在纸上画一个枣核形,这是眼睛的基本轮廓。3.在眼中画一个圆形,表示眼珠。4.在眼珠的中...

2025-05-05 11:32:30查看全文 >>

最大的差距打一成语四个字啊(四个大打一成语疯狂猜图答案)

最大的差距打一成语四个字啊(四个大打一成语疯狂猜图答案)

天壤之别,汉语成语,拼音是tiān rǎng zhī bié,指高天和平地的区别。极言差别之大。出自《抱朴子·内篇·论仙...

2025-05-05 12:17:21查看全文 >>

最大的差别是什么成语(巨大的差别成语)

最大的差别是什么成语(巨大的差别成语)

最大的差别的成语是:千差万别。改头换面。千差万别和改头换面都是形容两种东西差别非常的大。没有任何共同的地方!比如小明和小...

2025-05-05 12:16:41查看全文 >>

文档排行