找回密码
 注册
关于网站域名变更的通知
查看: 459|回复: 1
打印 上一主题 下一主题

MATLAB源程序代码分享:MATLAB实现在圆上随机取四个点并绘制线段

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-3-16 11:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
% k. ^: G6 S0 F. j( `3 i+ U( m& C
MATLAB源程序代码分享:MATLAB实现在圆上随机取四个点并绘制线段0 ~1 n3 i; a8 u: L0 f5 F
%% 根据圆的参数方程, 计算圆上点的坐标, 并绘制圆, f4 a$ k) I/ t; y6 v
clear;clc;close all
- S/ N9 g! ~1 L0 Y8 g0 A/ w  |: Xr=10;               % 定义圆的半径
$ i5 L: ]& @8 T1 v2 S1 t# [" ]6 T& Y+ Qtheta=0:0.01:2*pi;  % 角度从 0 到 2*pi
. ^" M' S' C# _* MN=length(theta);    % 计算数据点的个数 N) @9 \0 e# j' Z" F2 r& D2 |
x=r*cos(theta);     % 圆上点的横坐标 x
3 W, H# ?2 ?; @y=r*sin(theta);     % 圆上点的纵坐标 y
" Y) ?7 Q1 q- h( {  l
" @. {, t9 A, |6 l# f, i4 ]+ U0 @figure
5 D' l  q0 |' y/ i4 H. Zset(gcf,'units','normalized','position',[0.2 0.2 0.6 0.6]);  % 设置 figure 窗口的位置和尺寸
' Y& E+ S' @+ R) tplot(x,y)           % 绘制圆3 \8 k) H' ^' A+ J! Z7 s5 K: |: b) }
hold on" h9 G/ i. E7 D8 |6 I: W
axis equal
& }2 J+ l6 R- v" q4 D/ P
$ Q- {# n* u6 X# p7 L9 m: B%% 在圆上随机取四个点, 并得到这四个随机点的坐标值
6 }" ~% M5 w% K$ Inum=ceil(N*rand(4,1));    % 在 1~N 里随机取四个整数8 T' o( L) k% s' `
num=sort(num);            % 将这四个整数按照升序排列
9 s6 g6 y, ]3 ~% Cpoints_x=x(num);          % 圆上四个随机点的横坐标
# }% n$ w5 i+ b# c7 P( Y) gpoints_y=y(num);          % 圆上四个随机点的纵坐标/ D" f6 i/ ]5 J. @
scatter(points_x,points_y,'r*')              % 将这四个随机点, 在圆上用红色的星号标记出来. K1 }0 h( U" N0 Z7 Q# D$ m
text(points_x,points_y,{'A','B','C','D'})    % 在四个随机点的旁边, 显示 A B C D 字符3 f2 W( u3 k1 y
' n: a- p2 A$ D. j' N
A=[points_x(1),points_y(1)];  % A 点的横坐标值和纵坐标值6 _8 X" X$ ~8 T% v; ?; ]7 M% F, S
B=[points_x(2),points_y(2)];  % B 点的横坐标值和纵坐标值
8 R& `- f, V, x% x+ s2 `& n1 bC=[points_x(3),points_y(3)];  % C 点的横坐标值和纵坐标值5 k2 l4 R( G- B/ m- E- E! z
D=[points_x(4),points_y(4)];  % D 点的横坐标值和纵坐标值
" o! b/ }# N$ _% l) g: m) c4 U  S5 N* r6 y2 X8 M! {
%% 绘制四个随机点, 两两之间的线段
* M6 }- o, t/ L) e& b' }* [plot([A(1) B(1)],[A(2) B(2)],'r--')    % 绘制线段 AB) p' s4 k! x6 v; a+ E
plot([A(1) C(1)],[A(2) C(2)],'r--')    % 绘制线段 AC3 N3 J2 Q/ q# D) o8 f& y
plot([A(1) D(1)],[A(2) D(2)],'r--')    % 绘制线段 AD+ P5 ^3 |2 r; x& E2 Q
plot([B(1) C(1)],[B(2) C(2)],'r--')    % 绘制线段 BC  J! F* t! ?/ _' W" K
plot([B(1) D(1)],[B(2) D(2)],'r--')    % 绘制线段 BD
, `) k; T; Q7 G, Xplot([C(1) D(1)],[C(2) D(2)],'r--')    % 绘制线段 CD

该用户从未签到

2#
发表于 2020-3-16 18:43 | 只看该作者
MATLAB实现自定义的牛顿插值。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-4 04:04 , Processed in 0.140625 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表