梅科尔工作室-江凌宇-鸿蒙笔记4

今天我们来介绍几个API模块

  1. 路由跳转模块

为了实现Ability内页面的跳转和数据的传递我们首先要导入的必须是router模块

我们有四种跳转方式

方式一:

router.push(),跳转到指定页面。

每调用一次router.push()方法,均会新建一个页面。默认情况下,页面栈数量会加1,页面栈支持的最大页面数量为32

方式二:

router.push(),分单实例模式和标准模式

方式三:

router.replace(),即使用新的页面替换当前页面,并销毁被替换的当前页面,页面栈数量不变

方式四:

router.replace(),分单实例模式和标准模式

跳转和返回

router.back(),与router.push()搭配使用,当使用router.push之后才可以用router.back()进行返回。这种方法不会新建页面,返回的是原来的页面

  1. 数据请求模块

简单的来讲就是申请网络上的接口,获取传输的数据。主要是针对服务器数据的获取,首先我们要导入http模块

导入之后我们还要进行权限的配置,我们要设置网络权限

官方案例如下

  1. 弹窗模块

首先需要导入prompt模块

主要使用的是prompt.showToast()方法,作用是可以在屏幕上弹出提示信息。message是弹出的消息,而duration是弹出的时间,单位是毫秒。1000是1秒,则2000是2秒。

  1. 绑定事件

点击事件:

触摸事件:

挂载卸载事件:

拖拽事件:

以上则是对API一些模块和事件的总结,欢迎大家补充!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
题目描述: 一艘质量为$m$的船停靠在距离海岸线$L$的海域, 用一根长为$L$的铁锚将其系住。现有一条绳子, 一端固定在海岸上某点, 另一端系在船上。 要求绳子始终保持水平, 即绳子与水面的夹角为90°。 现在需要设计一个系泊系统,使得满足以下要求: 1. 绳子的长度为$L$; 2. 系泊系统能够承受风浪力矩$mgl\sin\theta$($\theta$为船在水平方向上的倾斜角度,$g$为重力加速度,$m$为船的质量,$l$为船到绳子固定点的水平距离); 3. 系泊系统的总重力不超过$G$,其中包括锚和绳子的重力; 请设计一个系泊系统,确定锚点在海岸线上的位置,以及绳子的长度。 思路: 1. 通过分析,可以得到系泊系统的主要受力情况:重力,浮力,张力和风浪力矩。其中,重力和浮力是与锚点位置无关的,可以先计算出来;风浪力矩是与船的倾斜角度有关的,需要在计算时考虑。 2. 假设锚点位置为$(0,0)$,船的位置为$(x,y)$,则绳子的长度$L$可以表示为$\sqrt{x^2+y^2}$。考虑绳子的张力,由于绳子与水面垂直,所以绳子的张力只有水平方向的分量,即$T\sin\theta$,其中,$\theta$为绳子与水平面的夹角。 3. 计算重力和浮力。船的重力为$mg$,浮力为$\rho Vg$,其中,$\rho$为水的密度,$V$为船的体积。绳子和锚的重力可以通过绳子的长度$L$和锚的重量来计算,即$g(L-x)\rho_s A$,其中,$\rho_s$为锚的密度,$A$为锚的横截面积。 4. 考虑风浪力矩的影响。假设风浪力矩对船的影响可以视为一个力矩,大小为$mgl\sin\theta$,方向垂直于船的水平方向,根据右手定则可以确定其方向。由于绳子的张力与水平方向平行,所以风浪力矩只对船的倾斜角度$\theta$有影响。 5. 在计算时,可以将锚点位置和绳子长度作为变量,通过求解最优化问题,确定最佳的锚点位置和绳子长度,使得系泊系统满足要求。可以考虑使用数值优化方法进行求解。 参考代码: ``` import numpy as np from scipy.optimize import minimize def objective(x): L = np.sqrt(x[0]**2 + x[1]**2) theta = np.arctan(x[1] / x[0]) T = (m*g + rho*V*g + (L-x[0])*rho_s*A) / np.sin(theta) M = T * L * np.sin(theta) return -M def constraint1(x): L = np.sqrt(x[0]**2 + x[1]**2) theta = np.arctan(x[1] / x[0]) T = (m*g + rho*V*g + (L-x[0])*rho_s*A) / np.sin(theta) return G - (m + rho_s*A*(L-x[0]) + rho*V)*g - T*np.cos(theta) def constraint2(x): return x[0] def constraint3(x): return x[1] # 系泊系统参数 m = 1000 # 船的质量 V = 100 # 船的体积 rho = 1000 # 水的密度 rho_s = 7800 # 锚的密度 A = 10 # 锚的横截面积 g = 9.8 # 重力加速度 G = 100000 # 系泊系统的总重力 # 初始值 x0 = [10, 10] # 约束条件 cons = [ {'type': 'ineq', 'fun': constraint1}, {'type': 'ineq', 'fun': constraint2}, {'type': 'ineq', 'fun': constraint3} ] # 求解最优化问题 sol = minimize(objective, x0, method='SLSQP', constraints=cons) # 输出结果 print(sol) ``` 参考资料: [1] 赵凌宇. 数学建模算法与应用[M]. 北京:清华大学出版社,2016. [2] 谷超豪,李涛,刘宝印,等. 数学建模算法应用与分析[M]. 北京:科学出版社,2016.

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值