OpenSCAD 大白

$fn=10;
module bag_bar(rr1,rr2,d)
{
rotate_extrude()
difference()
{ hull() //hull() fast in 2D, no good in 3D
{
circle(rr1);
translate([0,d])circle(rr2); }
translate([-50,0,0])square(100,center=true);
}
}
module body()
{ $fn=120;
color("white")
bag_bar(18,12.5,17);
color([.8,.7,.7])
translate([0,14,9])
rotate([25,0,0])
resize(newsize=[14,5.5,19])
sphere(1);
color([.8,.7,.7])
translate([0,-14,9])
rotate([-25,0,0])
resize(newsize=[14,5.5,19])
sphere(1);
}
module eye()
{$fn=30;
scale([.28,.28,.28])
color("black")
rotate([0,90,0])
union()
{
translate([0,10,0])cylinder(r=3.8,h=10,center=true);
translate([0,-10,0])cylinder(r=3.8,h=10,center=true);
cube([1.8,20,10],center=true);
}
}
module head()
{ $fn=80;
difference()
{
color("white")
resize(newsize=[14,14,10])
color("white")sphere(8);
translate([6,0,0])color("black")eye();
}
}
module leg()
{
$fn=50;
scale([.4,.4,.38])
{
color("white")bag_bar(13.5,17,15);
color([.8,.7,.7])
translate([0,0,-4])
resize(newsize=[26,25,26])
sphere(1);
color([.8,.7,.7])
resize(newsize=[25,14,28])
translate([0,19.8,14])sphere(13);
}
}
module arm_l()
{ $fn=50;
translate([0,0,-13])
color("white")
scale([1,0.75,1])
bag_bar(4.9,3.2,13); translate([0,0,-14.5])
rotate([0,00,0])
color("white")
rotate([-18,.55,0])
translate([0,0,-15.2])
scale([1,0.9,1])
bag_bar(4.35,4.8,14); color([.8,.7,.7])
translate([0,1.4,-15])
rotate([-3,0,0])
resize(newsize=[10,6.4,14])
sphere(1);
}
module arm_r()
{ $fn=50;
translate([0,0,-13])
color("white")
scale([1,0.75,1])
bag_bar(4.9,3.2,13); translate([0,0,-13])
rotate([30,130,0])
color("white")
rotate([-18,0,0])
translate([0,0,-12.4])
scale([1,0.9,1])
bag_bar(4.35,4.8,11.5); color([.8,.7,.7])
translate([0,-.1,-12.9])
rotate([-20,130,0])
resize(newsize=[10,9,10.5])
sphere(1);
} module thumb()
{$fn=30;
{
resize(newsize=[5.5,5.5,4])rotate([-5,0,0])cylinder(r1=4,r2=1.6,h=13.6,centr=true);
translate([0,0,2.5])rotate([5,0,0])resize(newsize=[3.5,4,5])sphere(1,center=true);
translate([0,0,4])rotate([0,0,0])resize(newsize=[3.6,4,5])sphere(1,center=true);
}
}
module finger()
{$fn=30;
{
resize(newsize=[3.5,3.9,6])sphere(1);
translate([.3,0,1.2])rotate([0,10,0])resize(newsize=[3.4,3.9,5])sphere(1);
translate([.8,0,2.8])rotate([0,20,0])resize(newsize=[3.4,3.5,5])sphere(1);
}
}
module hand()
{ $fn=30;
scale([.72,.72,.72])
{
color("white")translate([1,-4,5])rotate([20,10,0])finger();
color("white")translate([1,0,7])rotate([0,30,0])finger();
color("white")translate([-1,4,6])rotate([-20,-10,0])finger();
color("white")translate([1.8,3.9,0])rotate([-72,11,-30])thumb();
color("white")resize(newsize=[6,11,11])sphere(1);
}
}
module hand_l()
{$fn=30;
mirror([0,1,0])hand();
}
module card_slot()
{$fn=40;
scale([.1,.1,.1])
rotate([0,90,0])
difference()
{color("white")cylinder(r=20,h=10,center=true);
color("gray")difference()
{translate([0,0,5])color("white")cylinder(r=22,h=4,center=true);
translate([0,0,6])color("white")cylinder(r=19,h=12,center=true);
}
translate([-6,0,0.1])color("black")cube([2.5,21.1,10],center=true);
translate([2,-17,0.1])color("black")cube([2.5,9.1,10],center=true);
translate([2,17,0.1])color("black")cube([2.5,9.1,10],center=true); translate([-2,-11.5,0.1])color("black")rotate([0,0,66])cube([2.5,10,10],center=true);
translate([-2,11.5,0.1])color("black")rotate([0,0,-66])cube([2.5,10,10],center=true);
} }
module support_bar(rr1,d)
{cylinder(r1=rr1,r2=0.8,h=d-1.3,center=false);
translate([0,0,d-1.31])cylinder(r1=0.8,r2=0.1,h=1.4,center=false);
}
//baymax
module baymax()
{
body();
translate([0,-1,33])rotate([3,0,0])head();
translate([0,-5.4,-23])rotate([0,0,180])leg();
translate([0,5.4,-23])leg();
translate([0,11,23])
rotate([35,0,0])
arm_l(); translate([0,-11,23])
rotate([35,0,160])
arm_r();
translate([7.8,-19.2,20.2])
rotate([20,1,0])
hand();
translate([-.4,24.9,-3.6])
rotate([-30,190,100])
hand_l(); translate([10.4,5.8,20.5])
rotate([-13,-20,28])
card_slot();
//support
$fn=20;
translate([-.5,23.72,-28])support_bar(4,2);
translate([-.5,23.72,-28])support_bar(1.1,15.5); translate([-.5,23.6,-16])rotate([7,31.5,-6])support_bar(1,9.6);
translate([-.5,23.6,-15.8])rotate([24,-24,0])support_bar(1,6.9);
translate([-.5,23.6,-15.5])rotate([25,-30,-30.6])support_bar(1,8);
translate([-4.5,22.8,-10.5])rotate([33,-11,-30])support_bar(0.8,3.7); translate([-2.2,-19.4,-28])support_bar(4,2);
translate([-2.2,-19.4,-28])support_bar(1.1,35.8);
}
//with stand plane
scale([1.5,1.5,1.5])
difference()
{baymax();
translate([0,0,-58])cube([60,60,60],center=true);
}
OpenSCAD 大白的更多相关文章
- Quartz2D 画大白
今天初始Quartz2D,我好激动啊,也好开心,莫名的会喜欢带有图形相关的课程…… 好啦,闲话少说,今天用Quartz2D方法画了最最爱的大白.迫不及待的想要和大家分享. 1.首先实例化了view 2 ...
- css3画图之大白(●—●)
把大白送给你~ <!DOCTYPE html> <html> <head> <title>大白</title> <meta http- ...
- [OpenS-CAD]屏幕坐标转换分析
蓝色为地理坐标系XOY,记为坐标系A:黄色为屏幕坐标系xoy,记为坐标系B.地图的左下角点为(X0,Y0)可很容易的平移到坐标原点.因此这里只考虑地图位于坐标原点的情况,如图二也记为坐标系A. 设地理 ...
- html打造动画【系列1】- 萌萌的大白
每个人心中都有一个暖暖的大白,blingbling的大眼睛~软软的肚子~宽厚的肩膀~善良的心肠~如果可以,我愿意沦陷在大白的肚子里永远不出来,哈哈~毛球要失宠咯~ 哈哈哈 每个人都是独立的个体,大白也 ...
- 用纯CSS画大白
纯CSS打造网页大白知识点: 首先要把大白分割,整体baymax中包含header(eye1,eye2,mouth),torso(heart),belly(cover),l-bigfinge ...
- 大白话说Java泛型(一):入门、原理、使用
文章首发于[博客园-陈树义],点击跳转到原文<大白话说Java泛型(一):入门.原理.使用> 远在 JDK 1.4 版本的时候,那时候是没有泛型的概念的.当时 Java 程序员们写集合类的 ...
- 大白话说Java泛型(二):深入理解通配符
文章首发于[博客园-陈树义],点击跳转到原文<大白话说Java泛型(二):深入理解通配符> 上篇文章<大白话说Java泛型(一):入门.原理.使用>,我们讲了泛型的产生缘由以及 ...
- 大白话说Java反射:入门、使用、原理
文章首发于[博客园-陈树义],点击跳转到原文<大白话说Java反射:入门.进阶.原理> 反射之中包含了一个「反」字,所以想要解释反射就必须先从「正」开始解释. 一般情况下,我们使用某个类时 ...
- 用OpenSCAD設計特製的遊戲骰子
一開始先製作一個簡單的立方體.定義一個變量「cube_size」,然後使用下圖的立方體程式.center=true的設定可讓立方體位於起始模型的正中央. 為你在OpenSCAD創造的物體加上不同顏色是 ...
随机推荐
- SPI OLED 驱动
根据之前说过的 SPI 驱动的框架,在我们添加 SPI 设备驱动的时候需要与 SPI Master 完成匹配,通过 spi_register_board_info 进行注册. 构造设备 static ...
- [转]git提交代码时遇到代码库有更新以及本地有更新的解决方法
本文转自:https://blog.csdn.net/myphp2012/article/details/80519156 在多人协作开发时,经常碰到同事把最新修改推送到远程库,你在本地也做了修改,这 ...
- C#中Lambda表达式总结
在C#的语法中有一种比较特殊的写法,叫做Lambda表达式,这种表达式的写法在于你查询数据的时候直接是使用以下箭头的形式来表示查询语句的:=>.例如,我们要查找学生的List<Studen ...
- Linux中配置别名
Linux中修改配置别名 ####用到的命令: alias是用来查看系统中有什么别名 source 让配置生效 临时取消别名的方法 unalias 临时取消别名 \cp /mnt/test.txt / ...
- 【Servlet】1、Servlet监听器及相关接口
Servlet监听器用于监听一些重要事件的发生,监听器对象可以在事情发生前.发生后可以做一些必要的处理. 接口: 目前Servlet2.4和JSP2.0总共有8个监听器接口和6个Event类,其中Ht ...
- 【高并发解决方案】7、一致性hash解读
一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似.一致性哈希修正了CARP使用的简 ...
- Mybatis关联查询之一对多和多对一XML配置详解
平时在开发过程中dao.bean和XML文件都是自动生成的,很少写XML的配置关系,今天记录一下mybatis的关联查询中的多对一和一对多的情况. 首先是有两张表(学生表Student和老师Teach ...
- javascript如何处理很多数据,类似分页切换
需求:一个用户列表数据,如果对应列表数据大于10个,就每10个保存到二维数组,后面不足10个的依然放在二维数组尾部 用处:模拟分页,或者局部刷新 在线DEMO:戳这里 var obj=[ { &quo ...
- 外边距塌陷 margin collapsing
块的顶部外边距和底部外边距有时被组合(折叠)为单个外边距,其大小是组合到其中的最大外边距, 这种行为称为外边距塌陷(margin collapsing),有的地方翻译为外边距合并. 1.相邻的兄弟姐妹 ...
- Docker 容器备份例子
# 在 node1 执行 nginx 程序,挂载本地的目录 docker pull nginx:stable-alpine mkdir /data/html echo "hello worl ...