93 lines
2.6 MiB
OpenSCAD
93 lines
2.6 MiB
OpenSCAD
|
/*
|
||
|
|
||
|
# Parameters
|
||
|
|
||
|
Note: If you are running this locally, in preview mode the letters are raised rather than embedded into the object. This is a workaround for an OpenSCAD bug that breaks the preview. The letters will be embedded in once you render the object to export it (F6).
|
||
|
|
||
|
*/
|
||
|
// The first letter. Please put in only a single letter. Leave empty if you don't want a letter in this spot. Same for all the other letters.
|
||
|
$first_letter = "A";
|
||
|
$second_letter = "B";
|
||
|
$third_letter = "C";
|
||
|
$fourth_letter = "D";
|
||
|
$fifth_letter = "E";
|
||
|
$sixth_letter = "F";
|
||
|
$seventh_letter = "G";
|
||
|
$eight_letter = "H";
|
||
|
// Depth, in mm. Make this number higher if you want the letters to go in deeper.
|
||
|
$depth = 1.5;
|
||
|
// Rotation. By default all letters are aligned to the short edge of the cube. Check this to rotate the letters 90 degrees and make them aligned to the long edge instead.
|
||
|
$rotate = false;
|
||
|
|
||
|
// The font to use. If you change the font, you will likely need to change the scale and offsets to correctly position the letters. Thingiverse MakerBot customizer seems to have the Google Fonts I have tried, so you can check the fonts available there and try if they work here. The font name will be one word.
|
||
|
$font = "CaveatBrush";
|
||
|
// Make the letters bigger or smaller.
|
||
|
$font_scale = 1;
|
||
|
// Move all letters in the first column right or left.
|
||
|
$first_column_offset = 0;
|
||
|
// Move all letters in the second column right or left.
|
||
|
$second_column_offset = 0;
|
||
|
// Move all letters in the first row up or down.
|
||
|
$first_row_offset = 0;
|
||
|
// Move all letters in the second row up or down.
|
||
|
$second_row_offset = 0;
|
||
|
// Move all letters in the third row up or down.
|
||
|
$third_row_offset = 0;
|
||
|
// Move all letters in the fourth row up or down.
|
||
|
$fourth_row_offset = 0;
|
||
|
|
||
|
/*
|
||
|
|
||
|
# Code
|
||
|
|
||
|
*/
|
||
|
module __Customizer_Limit__ () {} // Any variables after this are not for the customizer
|
||
|
|
||
|
$rotation = $rotate ? 90 : 0;
|
||
|
$rotate_first_column_offset = $rotate ? 7 : 0;
|
||
|
$rotate_second_column_offset = $rotate ? 9.2 : 0;
|
||
|
|
||
|
if ($preview) {
|
||
|
union() {
|
||
|
object1(1);
|
||
|
letters();
|
||
|
};
|
||
|
} else {
|
||
|
difference() {
|
||
|
object1(1);
|
||
|
letters();
|
||
|
};
|
||
|
};
|
||
|
|
||
|
|
||
|
module letters() {
|
||
|
$first_column = -19 + $first_column_offset + $rotate_first_column_offset;
|
||
|
$second_column = -8 + $second_column_offset + $rotate_second_column_offset;
|
||
|
$first_row = 30.5 + $first_row_offset;
|
||
|
$second_row = 1.8 + $second_row_offset;
|
||
|
$third_row = -10.5 + $third_row_offset;
|
||
|
$fourth_row = -38.3 + $fourth_row_offset;
|
||
|
$height = 20 - $depth;
|
||
|
|
||
|
translate([$first_column, $first_row, $height]) letter($first_letter);
|
||
|
translate([$second_column, $first_row, $height]) letter($second_letter);
|
||
|
translate([$first_column, $second_row, $height]) letter($third_letter);
|
||
|
translate([$second_column, $second_row, $height]) letter($fourth_letter);
|
||
|
translate([$first_column, $third_row, $height]) letter($fifth_letter);
|
||
|
translate([$second_column, $third_row, $height]) letter($sixth_letter);
|
||
|
translate([$first_column, $fourth_row, $height]) letter($seventh_letter);
|
||
|
translate([$second_column, $fourth_row, $height]) letter($eight_letter);
|
||
|
}
|
||
|
|
||
|
module letter(l) {
|
||
|
color("red")
|
||
|
rotate([0, 0, $rotation])
|
||
|
linear_extrude(height=3)
|
||
|
scale($font_scale)
|
||
|
text(l, font="CaveatBrush");
|
||
|
};
|
||
|
|
||
|
module object1(scale) {polyhedron(
|
||
|
points=[[-30.100000381469727,27.63800048828125,16.83799934387207],[-30.100000381469727,24.80500030517578,12.597999572753906],[-30.100000381469727,27.243999481201172,17.16200065612793],[-30.100000381469727,27.243999481201172,17.16200065612793],[-30.100000381469727,24.80500030517578,12.597999572753906],[-30.100000381469727,26.795000076293945,17.402000427246094],[-30.100000381469727,27.961999893188477,16.444000244140625],[-30.100000381469727,24.80500030517578,12.597999572753906],[-30.100000381469727,27.63800048828125,16.83799934387207],[-30.100000381469727,24.80500030517578,17.402000427246094],[-30.100000381469727,25.292999267578125,17.549999237060547],[-30.100000381469727,24.80500030517578,12.597999572753906],[-30.100000381469727,26.795000076293945,17.402000427246094],[-30.100000381469727,24.80500030517578,12.597999572753906],[-30.100000381469727,26.30699920654297,17.549999237060547],[-30.100000381469727,25.292999267578125,17.549999237060547],[-30.100000381469727,25.799999237060547,17.600000381469727],[-30.100000381469727,24.80500030517578,12.597999572753906],[-30.100000381469727,26.30699920654297,17.549999237060547],[-30.100000381469727,24.80500030517578,12.597999572753906],[-30.100000381469727,25.799999237060547,17.600000381469727],[-17.941999435424805,-34.91600036621094,0],[-30,-35.55083465576172,0],[-17.770999908447266,-34.35300064086914,0],[-30.100000381469727,27.961999893188477,16.444000244140625],[-30.100000381469727,28.20199966430664,15.994999885559082],[-30.100000381469727,24.80500030517578,12.597999572753906],[-30.100000381469727,25.292999267578125,12.449999809265137],[-30.100000381469727,24.80500030517578,12.597999572753906],[-30.100000381469727,28.20199966430664,15.994999885559082],[-30.100000381469727,28.20199966430664,15.994999885559082],[-30.100000381469727,28.350000381469727,15.506999969482422],[-30.100000381469727,25.292999267578125,12.449999809265137],[-30.100000381469727,28.350000381469727,15.506999969482422],[-30.100000381469727,28.399999618530273,15],[-30.100000381469727,25.292999267578125,12.449999809265137],[-30.100000381469727,28.399999618530273,15],[-30.100000381469727,28.350000381469727,14.493000030517578],[-30.100000381469727,25.292999267578125,12.449999809265137],[-30.100000381469727,28.350000381469727,14.493000030517578],[-30.100000381469727,28.20199966430664,14.005000114440918],[-30.100000381469727,25.292999267578125,12.449999809265137],[-30.100000381469727,28.20199966430664,14.005000114440918],[-30.100000381469727,27.961999893188477,13.555999755859375],[-30.100000381469727,25.292999267578125,12.449999809265137],[-30.100000381469727,27.961999893188477,13.555999755859375],[-30.100000381469727,27.63800048828125,13.161999702453613],[-30.100000381469727,25.292999267578125,12.449999809265137],[-30.100000381469727,25.799999237060547,12.399999618530273],[-30.100000381469727,25.292999267578125,12.449999809265137],[-30.100000381469727,27.63800048828125,13.161999702453613],[-30.100000381469727,27.243999481201172,12.838000297546387],[-30.100000381469727,26.795000076293945,12.597999572753906],[-30.100000381469727,27.63800048828125,13.161999702453613],[-30.100000381469727,26.30699920654297,12.449999809265137],[-30.100000381469727,27.63800048828125,13.161999702453613],[-30.100000381469727,26.795000076293945,12.597999572753906],[-30.100000381469727,25.799999237060547,12.399999618530273],[-30.100000381469727,27.63800048828125,13.161999702453613],[-30.100000381469727,26.30699920654297,12.449999809265137],[-28.538999557495117,-39.03799819946289,19.999000549316406],[-27.7810001373291,-39.6609992980957,19.999000549316406],[-24.416000366210938,-28.441999435424805,19.999000549316406],[-27.7810001373291,-39.6609992980957,19.999000549316406],[-26.916000366210938,-40.12300109863281,19.999000549316406],[-24.416000366210938,-28.441999435424805,19.999000549316406],[-26.916000366210938,-40.12300109863281,19.999000549316406],[-25.976999282836914,-40.40800094604492,19.999000549316406],[-24.416000366210938,-28.441999435424805,19.999000549316406],[-25.051834106445312,-40.499000549316406,19.999000549316406],[-24.416000366210
|
||
|
faces=[[0,1,2],[3,4,5],[6,7,8],[9,10,11],[12,13,14],[15,16,17],[18,19,20],[21,22,23],[24,25,26],[27,28,29],[30,31,32],[33,34,35],[36,37,38],[39,40,41],[42,43,44],[45,46,47],[48,49,50],[51,52,53],[54,55,56],[57,58,59],[60,61,62],[63,64,65],[66,67,68],[69,70,71],[72,73,74],[75,76,77],[78,79,80],[81,82,83],[84,85,86],[87,88,89],[90,91,92],[93,94,95],[96,97,98],[99,100,101],[102,103,104],[105,106,107],[108,109,110],[111,112,113],[114,115,116],[117,118,119],[120,121,122],[123,124,125],[126,127,128],[129,130,131],[132,133,134],[135,136,137],[138,139,140],[141,142,143],[144,145,146],[147,148,149],[150,151,152],[153,154,155],[156,157,158],[159,160,161],[162,163,164],[165,166,167],[168,169,170],[171,172,173],[174,175,176],[177,178,179],[180,181,182],[183,184,185],[186,187,188],[189,190,191],[192,193,194],[195,196,197],[198,199,200],[201,202,203],[204,205,206],[207,208,209],[210,211,212],[213,214,215],[216,217,218],[219,220,221],[222,223,224],[225,226,227],[228,229,230],[231,232,233],[234,235,236],[237,238,239],[240,241,242],[243,244,245],[246,247,248],[249,250,251],[252,253,254],[255,256,257],[258,259,260],[261,262,263],[264,265,266],[267,268,269],[270,271,272],[273,274,275],[276,277,278],[279,280,281],[282,283,284],[285,286,287],[288,289,290],[291,292,293],[294,295,296],[297,298,299],[300,301,302],[303,304,305],[306,307,308],[309,310,311],[312,313,314],[315,316,317],[318,319,320],[321,322,323],[324,325,326],[327,328,329],[330,331,332],[333,334,335],[336,337,338],[339,340,341],[342,343,344],[345,346,347],[348,349,350],[351,352,353],[354,355,356],[357,358,359],[360,361,362],[363,364,365],[366,367,368],[369,370,371],[372,373,374],[375,376,377],[378,379,380],[381,382,383],[384,385,386],[387,388,389],[390,391,392],[393,394,395],[396,397,398],[399,400,401],[402,403,404],[405,406,407],[408,409,410],[411,412,413],[414,415,416],[417,418,419],[420,421,422],[423,424,425],[426,427,428],[429,430,431],[432,433,434],[435,436,437],[438,439,440],[441,442,443],[444,445,446],[447,448,449],[450,451,452],[453,454,455],[456,457,458],[459,460,461],[462,463,464],[465,466,467],[468,469,470],[471,472,473],[474,475,476],[477,478,479],[480,481,482],[483,484,485],[486,487,488],[489,490,491],[492,493,494],[495,496,497],[498,499,500],[501,502,503],[504,505,506],[507,508,509],[510,511,512],[513,514,515],[516,517,518],[519,520,521],[522,523,524],[525,526,527],[528,529,530],[531,532,533],[534,535,536],[537,538,539],[540,541,542],[543,544,545],[546,547,548],[549,550,551],[552,553,554],[555,556,557],[558,559,560],[561,562,563],[564,565,566],[567,568,569],[570,571,572],[573,574,575],[576,577,578],[579,580,581],[582,583,584],[585,586,587],[588,589,590],[591,592,593],[594,595,596],[597,598,599],[600,601,602],[603,604,605],[606,607,608],[609,610,611],[612,613,614],[615,616,617],[618,619,620],[621,622,623],[624,625,626],[627,628,629],[630,631,632],[633,634,635],[636,637,638],[639,640,641],[642,643,644],[645,646,647],[648,649,650],[651,652,653],[654,655,656],[657,658,659],[660,661,662],[663,664,665],[666,667,668],[669,670,671],[672,673,674],[675,676,677],[678,679,680],[681,682,683],[684,685,686],[687,688,689],[690,691,692],[693,694,695],[696,697,698],[699,700,701],[702,703,704],[705,706,707],[708,709,710],[711,712,713],[714,715,716],[717,718,719],[720,721,722],[723,724,725],[726,727,728],[729,730,731],[732,733,734],[735,736,737],[738,739,740],[741,742,743],[744,745,746],[747,748,749],[750,751,752],[753,754,755],[756,757,758],[759,760,761],[762,763,764],[765,766,767],[768,769,770],[771,772,773],[774,775,776],[777,778,779],[780,781,782],[783,784,785],[786,787,788],[789,790,791],[792,793,794],[795,796,797],[798,799,800],[801,802,803],[804,805,806],[807,808,809],[810,811,812],[813,814,815],[816,817,818],[819,820,821],[822,823,824],[825,826,827],[828,829,830],[831,832,833],[834,835,836],[837,838,839],[840,841,842],[843,844,845],[846,847,848],[849,850,851],[852,853,854],[855,856,857],[858,859,860],[861,862,863],[864,865,866],[867,868,869],[870,871,872],[873,874,875],[876,877,878],[879,880,881],[882,883,884],[885,886,887],[888,889,890],[891,892,893],[894,895,896],[897,898,899
|