楼主: 水天一色DIY
2439 8

[程序分享] 圣诞节到了,分享别人种的圣诞树 [推广有奖]

  • 2关注
  • 28粉丝

VIP

副教授

85%

还不是VIP/贵宾

-

威望
1
论坛币
50270 个
通用积分
1.1456
学术水平
66 点
热心指数
76 点
信用等级
48 点
经验
20136 点
帖子
590
精华
1
在线时间
708 小时
注册时间
2010-9-18
最后登录
2023-3-16

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
  1. part <- list(x0=0,y0=0,x1=0,y1=1,
  2.     branch1=NULL,branch2=NULL,extend=NULL,
  3.     lwd=1,depth=0,col='springgreen')

  4. par(mfrow=c(1,1),mar=c(5, 4, 4, 2) + 0.1)
  5. segplot <- function(tree) {
  6.   if (is.null(tree)) return()
  7.   segments(tree$x0,tree$y0,tree$x1,tree$y1,
  8.       col=tree$col,
  9.       lwd=tree$lwd)
  10.   segplot(tree$branch1)
  11.   segplot(tree$branch2)
  12.   segplot(tree$extend)
  13. }
  14. #segplot(part)

  15. grow <- function(tree) {
  16.   if (is.null(tree) ) return(NULL)
  17.   
  18.   tree$lwd=tree$lwd*1.2
  19.   
  20.   if (tree$lwd>2.5) tree$col <- 'brown'
  21.   if (is.null(tree$extend)) {
  22.     tree$extend <- list(
  23.         x0=tree$x1,
  24.         y0=tree$y1,
  25.         x1=rnorm(1,1,.03)*(2*tree$x1-tree$x0),
  26.         y1=(rnorm(1,.98,.02)+.02*(tree$x1==tree$x0))*(2*tree$y1-tree$y0),
  27.         branch1=NULL,
  28.         branch2=NULL,
  29.         extend=NULL,
  30.         lwd=1,
  31.         depth=tree$depth,
  32.         col=tree$col
  33.     )
  34.     length=sqrt((tree$x1-tree$x0)^2 + (tree$y1-tree$y0)^2)
  35.     angle <- asin((tree$x1-tree$x0)/length)
  36.     branch <- list(
  37.         x0=(tree$x1+tree$x0)/2,
  38.         y0=(tree$y1+tree$y0)/2,
  39.         branch1=NULL,
  40.         branch2=NULL,
  41.         extend=NULL,
  42.         lwd=1,
  43.         depth=tree$depth,
  44.         col=tree$col
  45.     )
  46.     shift <- rnorm(2,.5,.1)
  47.     branch$x0 <- shift[1]*tree$x1+(1-shift[1])*tree$x0
  48.     branch$y0 <- shift[1]*tree$y1+(1-shift[1])*tree$y0
  49.     length=length*rnorm(1,.5,.05)
  50.     co <- runif(1,.35,.45)
  51.     branch$x1 <- branch$x0+sin(angle+co)*length
  52.     branch$y1 <- branch$y0+cos(angle+co)*length
  53.     tree$branch1 <- branch
  54.     branch$x0 <- shift[2]*tree$x1+(1-shift[2])*tree$x0
  55.     branch$y0 <- shift[2]*tree$y1+(1-shift[2])*tree$y0
  56.     co <- runif(1,.35,.45)
  57.     branch$x1 <- branch$x0+sin(angle-co)*length
  58.     branch$y1 <- branch$y0+cos(angle-co)*length
  59.     tree$branch2 <- branch   
  60.   } else {
  61.     tree$branch1 <- grow(tree$branch1)
  62.     tree$branch2 <- grow(tree$branch2)
  63.     tree$extend <- grow(tree$extend)
  64.   }
  65.   tree$depth <- tree$depth+1
  66.   if (tree$depth>2)  tree$col <- 'green'
  67.   if (tree$depth>4)  tree$col <- 'darkgreen'
  68.   if (tree$depth>6)  tree$col <- 'brown'
  69.   
  70.   tree
  71. }
  72. tree <- part
  73. for (i in 1:9) tree <- grow(tree)
  74. par(mar=c(0,0,0,0))
  75. plot(x=c(-3,3),y=c(0,9),type='n',axes=FALSE,xlab='',ylab='')
  76. segplot(tree)
复制代码


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:圣诞节 圣诞树 PART ART 圣诞树 圣诞节

tree.png (10.63 KB)

tree.png

已有 4 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
李会超 + 36 + 36 精彩帖子
ltx5151 + 20 观点有启发
求证1加1 + 1 精彩帖子
jmpamao + 1 + 1 + 1 精彩帖子

总评分: 经验 + 56  论坛币 + 36  学术水平 + 1  热心指数 + 2  信用等级 + 1   查看全部评分

本帖被以下文库推荐

沙发
淡定呆 发表于 2013-12-21 19:43:18 |只看作者 |坛友微信交流群
太犀利了 赞一个 学习了

使用道具

藤椅
abaobao 发表于 2013-12-22 00:35:04 |只看作者 |坛友微信交流群
狂赞!!!!!!!!   

使用道具

板凳
jmpamao 发表于 2013-12-22 00:47:18 |只看作者 |坛友微信交流群
这个圣诞树不怎么性感丰满, 比较中国的秀气。
                     

使用道具

报纸
yywan0913 在职认证  发表于 2013-12-22 10:19:15 |只看作者 |坛友微信交流群
上面再挂些礼物就好了
是什么给了你自信

使用道具

地板
nuomin 发表于 2013-12-24 11:38:05 |只看作者 |坛友微信交流群
收藏了,谢谢分享

使用道具

7
yywan0913 在职认证  发表于 2013-12-24 12:59:55 |只看作者 |坛友微信交流群
nuomin 发表于 2013-12-24 11:38
收藏了,谢谢分享
看见你回复了   以为你会画个更好的瞧瞧的。。。
是什么给了你自信

使用道具

8
foreverfhh 发表于 2014-11-6 09:00:33 |只看作者 |坛友微信交流群
太棒了

使用道具

9
xucaifeng66 发表于 2014-11-6 09:57:34 |只看作者 |坛友微信交流群
哈哈,感谢分享,牛人

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-27 15:04