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創造的物體加上不同顏色是 ...
随机推荐
- Django之stark组件
现在让我说啥是stark组件,我也说不清楚.反正从今天讲的知识来看,今天完成的就是自己写一个模块,这个模块包含了admin后台管理工具的一些比较好用的功能,我们把它提炼出来,也就是相当于自己写一个ad ...
- C# ValueTuple 原理
本文告诉大家一些 ValueTuple 的原理,避免在使用出现和期望不相同的值.ValueTuple 是 C# 7 的语法糖,如果使用的 .net Framework 是 4.7 以前,那么需要使用 ...
- jQuery合并同一列中相同文本的相邻单元格
一.效果图 二.在html的head中引入jQuery <script language="javascript" src="${pageContext.reque ...
- 小程序webview应用实践
原文:小程序webview实践 作者:张所勇(转转开放业务部前端负责人) 公众号:大转转FE Fundebug经授权转载,版权归原作者所有. 大家好,我是转转开放业务部前端负责人张所勇,今天主要来跟大 ...
- 请输入经过encode编码的URL
美团门店映射: <?php $url = "http://manage.test.kdb.kudianbao.com/Branch/mt_mdysh1d"; $res = u ...
- Breeze 部署 Kubernetes 1.12.1高可用集群
今天看文章介绍了一个开源部署 K8S 的工具,有空研究下~ Github 地址: https://github.com/wise2c-devops/breeze
- 【读书笔记】iOS-storyboard-两个场景间的切换(二)
接着上一节 一,在storybord画布上面,新增加一个场景,即拖动一个View Controller到画布上面,同时建立一个button,名字为secondButton.如图所示. 二,点击第一个按 ...
- 超级干货 :一文读懂数据可视化 ZT
前言 数据可视化,是指将相对晦涩的的数据通过可视的.交互的方式进行展示,从而形象.直观地表达数据蕴含的信息和规律. 早期的数据可视化作为咨询机构.金融企业的专业工具,其应用领域较为单一,应用形态较为保 ...
- Django 认证
from django.contrib import auth 1.authenticate() 提供了用户认证,即验证用户名以及密码是否正确,一般需要username和password两个关键字参数 ...
- 手把手教你撸一个简易的 webpack
背景 随着前端复杂度的不断提升,诞生出很多打包工具,比如最先的grunt,gulp.到后来的webpack和Parcel.但是目前很多脚手架工具,比如vue-cli已经帮我们集成了一些构建工具的使用. ...