File: tikz-3dplot.cwl

package info (click to toggle)
texstudio 4.3.1%2Bds-2
  • links: PTS
  • area: main
  • in suites: bookworm
  • size: 74,980 kB
  • sloc: cpp: 102,721; xml: 17,126; ansic: 8,143; sh: 194; javascript: 177; makefile: 28
file content (453 lines) | stat: -rw-r--r-- 9,298 bytes parent folder | download
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
# tikz-3dplot package
# Matthew Bertucci 12/30/2021

#include:pgf
#include:ifthen
# tikz must be loaded first
# loads calc, 3d, and arrows libraries

#keyvals:\begin{tikzpicture}#c,\tikz#c,\begin{scope}#c,\tikzset#c,\scoped#c,\path#c,\draw#c,\fill#c,\filldraw#c,\pattern#c,\shade#c,\shadedraw#c,\clip#c,\node#c,\coordinate#c,\nodepart#c,\pic#c,\matrix#c,\calendar#c,\chainin#c,\arrow#c,\arrowreversed#c,\tdplotdrawarc#c,\tdplotdrawpolytopearc#c
tdplot_main_coords
tdplot_rotated_coords
tdplot_screen_coords
#endkeyvals

\tdplotsetmaincoords{θ}{φ}
\tdplotsetrotatedcoords{α}{β}{γ}
\tdplotsetrotatedcoordsorigin{point}
\tdplotresetrotatedcoordsorigin
\tdplotsetthetaplanecoords{φ}
\tdplotsetrotatedthetaplanecoords{φ}
\tdplotsetcoord{point}{r}{θ}{φ}
\tdplottransformmainrot{x}{y}{z}
\tdplotresx
\tdplotresy
\tdplotresz
\tdplotresphi
\tdplotrestheta
\tdplottransformrotmain{x}{y}{z}
\tdplottransformmainscreen{x}{y}{z}
\tdplotgetpolarcoords{x}{y}{z}
\tdplotcrossprod(x1,y1,z1)(x2,y2,z2)
\tdplotdefinepoints(vx,vy,vz)(x1,y1,z1)(x2,y2,z2)
\tdplotdrawarc{center}{r}{angle start}{angle end}{label options}{label}
\tdplotdrawarc[options%keyvals]{center}{r}{angle start}{angle end}{label options}{label}
\tdplotdrawpolytopearc{r}{label options}{label}
\tdplotdrawpolytopearc[options%keyvals]{r}{label options}{label}
\tdplotvertexx
\tdplotvertexy
\tdplotvertexz
\tdplotax
\tdplotay
\tdplotaz
\tdplotbx
\tdplotby
\tdplotbz
\tdplotsphericalsurfaceplot{θ-steps}{φ-steps}{function}{line color}{fill color}{x axis}{y axis}{z axis}
\tdplotsphericalsurfaceplot[fill style%keyvals]{θ-steps}{φ-steps}{function}{line color}{fill color}{x axis}{y axis}{z axis}
#keyvals:\tdplotsphericalsurfaceplot#c
parametricfill
#endkeyvals
\tdplottheta
\tdplotphi
\tdplotr
\tdplotsetpolarplotrange{θ1}{θ2}{φ1}{φ2}
\tdplotresetpolarplotrange
\tdplotshowargcolorguide{x pos}{y pos}{x size}{y size}
\tdplotsinandcos{sin macro%cmd}{cos macro%cmd}{θ}#d
\tdplotmult{macro%cmd}{multiplicand}{multiplicator}#d
\tdplotdiv{macro%cmd}{dividend}{divisor}#d

tdplotfillcolor#B
\tdplotlowerphi#*
\tdplotupperphi#*
\tdplotlowertheta#*
\tdplotuppertheta#*
\tdplotcalctransformmainrot#*
\tdplotcalctransformrotmain#*
\tdplotcalctransformmainscreen#*
\tdplotcheckdiff{val1}{val2}{tolerance}{true}{false}#*
\tdplotdosurfaceplot{arg1}{arg2}{arg3}{arg4}{arg5}{arg6}#*
\tdplotsimplesetcoord{arg1}{arg2}{arg3}{arg4}#*
\tdplotmaintheta#*
\tdplotmainphi#*
\sintheta#S
\sinphi#S
\stsp#S
\stcp#S
\ctsp#S
\ctcp#S
\raarot#S
\rabrot#S
\racrot#S
\rbarot#S
\rbbrot#S
\rbcrot#S
\rcarot#S
\rcbrot#S
\rccrot#S
\sinalpha#S
\sinbeta#S
\singamma#S
\cosalpha#S
\cosbeta#S
\cosgamma#S
\sasb#S
\sbsg#S
\sasg#S
\sasbsg#S
\sacb#S
\sacg#S
\sacbsg#S
\sacbcg#S
\casb#S
\cacb#S
\cacg#S
\casg#S
\cacbsg#S
\cacbcg#S
\raaeul#S
\rabeul#S
\raceul#S
\rbaeul#S
\rbbeul#S
\rbceul#S
\rcaeul#S
\rcbeul#S
\rcceul#S
\tdplotalpha#*
\tdplotbeta#*
\tdplotgamma#*
\raaeaa#S
\rabeba#S
\raceca#S
\raaeab#S
\rabebb#S
\racecb#S
\raaeac#S
\rabebc#S
\racecc#S
\rbaeaa#S
\rbbeba#S
\rbceca#S
\rbaeab#S
\rbbebb#S
\rbcecb#S
\rbaeac#S
\rbbebc#S
\rbcecc#S
\raarc#S
\rabrc#S
\racrc#S
\rbarc#S
\rbbrc#S
\rbcrc#S
\sinthetavec#S
\costhetavec#S
\stcpv#S
\stspv#S
\sinphivec#S
\cosphivec#S
\tdplottemp#S
\ax#S
\ay#S
\az#S
\bx#S
\by#S
\bz#S
\tdplotstartphi#*
\origviewthetastep#S
\origviewphistep#S
\originalphi#S
\originaltheta#S
\tdplotsuperfudge#*
\viewphistart#S
\viewphistep#S
\viewphiinc#S
\viewphiend#S
\viewthetastep#S
\viewthetastart#S
\viewthetaend#S
\viewthetainc#S
\nextphi#S
\curlongitude#S
\curlatitude#S
\curphi#S
\logictest#S
\phaseshift#S
\colorarg#S
\tdplotx#*
\tdploty#*
\tdplothuestep#*
\tdplotxsize#*
\tdplotysize#*
\tdplotyscale#*
\tdplotstarty#*
\tdplotstopy#*
\tdplotstartx#*
\tdplotstopx#*
\vxcalc#S
\vycalc#S
\vzcalc#S
\vcalc#S
\vxycalc#S

#keyvals:\tdplotdrawarc#c,\tdplotdrawpolytopearc#c
## coordinate systems
x=%<<dimen> or <coord>%>
y=%<<dimen> or <coord>%>
z=%<<dimen> or <coord>%>
## intersections library
name path=%<path%>
name path global=%<path%>
name intersections={%<options%>}
turn
current point is local#true,false
## paths
name=%<name%>
append after command=%<path%>
prefix after command=%<path%>
rounded corners
rounded corners=##L
sharp corners
x radius=%<<num> or <dimen>%>
y radius=%<<num> or <dimen>%>
radius=##L
at=%<coord%>
start angle=%<degrees%>
end angle=%<degrees%>
delta angle=%<degrees%>
step=%<<num> or <dimen> or <coord>%>
xstep=%<<num> or <dimen>%>
ystep=%<<num> or <dimen>%>
help lines
bend=%<coord%>
bend pos=%<fraction%>
parabola height=##L
bend at start
bend at end
to path=%<path%>
save path=%<macro%>
use path=%<macro%>
## actions on paths
color=#%color
%color
draw
draw=#%color
line width=##L
ultra thin
very thin
thin
semithick
thick
very thick
ultra thick
line cap=#round,rect,butt
line join=#round,bevel,miter
miter limit=%<factor%>
dash pattern=%<dash pattern%>
dash phase=%<dash phase%>
dash=%<dash pattern%> phase %<dash phase%>
dash expand off
solid
dotted
densely dotted
loosely dotted
dashed
densely dashed
loosely dashed
dash dot
densely dash dot
loosely dash dot
dash dot dot
densely dash dot dot 
loosely dash dot dot
double
double=#%color
double distance=##L
double distance between line centers=##L
double equal sign distance
fill
fill=#%color
pattern
pattern=%<name%>
pattern color=#%color
nonzero rule
even odd rule
shade
shading=#axis,radial,ball
shading angle=%<degrees%>
## arrows
arrows=%<start spec%>-%<end spec%>
->
<-
<->
tips
tips=#true,proper,on draw,on proper draw,never,false
>=%<end arrow spec%>
shorten <=##L
shorten >=##L
## nodes: shape, text, and position
inner sep=##L
inner xsep=##L
inner ysep=##L
outer sep=%<<dimen> or auto%>
outer xsep=##L
outer ysep=##L
minimum height=##L
minimum width=##L
minimum size=##L
shape aspect=%<aspect ratio%>
shape border uses incircle#true,false
shape border rotate=%<degrees%>
text=#%color
node font=%<font commands%>
font=%<font commands%>
text width=##L
align=#left,flush left,right,flush right,center,flush center,justify
text height=##L
text depth=##L
anchor=#north west,north,north east,west,center,east,mid west,mid,mid east,base west,base,base east,south west,south,south east,text
above
above=##L
below
below=##L
right
right=##L
left
left=##L
above left
above right
below left
below right
centered
# positioning library
on grid#true,false
node distance=##L
base left=
base right=
mid left=
mid right=
above=of %<node%>
below=of %<node%>
right=of %<node%>
left=of %<node%>
# transformations
transform shape
transform shape nonlinear#true,false
# placing nodes explicitly
pos=%<fraction%>
auto
auto=#left,right,false
swap
sloped
allow upside down#true,false
midway
near start
near end
very near start
very near end
at start
at end
label=%<angle%>:%<text%>
label=[%<options%>]%<angle%>:%<text%>
label position=%<degrees%>
absolute#true,false
label distance=##L
pin=%<angle%>:%<text%>
pin=[%<options%>]%<angle%>:%<text%>
pin distance=##L
pin edge={%<options%>}
# quotes library
node quotes mean=%<replacement%>
# referencing nodes
remember picture#true,false
overlay#true,false
# graphs library
every new ->
every new --
every new <->
every new <-
every new -!-
new set=%<set name%>
set=%<set name%>
# making trees grow
growth parent anchor=#north west,north,north east,west,center,east,mid west,mid,mid east,base west,base,base east,south west,south,south east,text
growth function=%<macro%>
edge from parent path=%<path%>
# transparency
draw opacity=%<value%>
opacity=%<value%>
transparent
ultra nearly transparent
very nearly transparent 
nearly transparent
semitransparent
nearly opaque 
very nearly opaque
ultra nearly opaque
opaque
fill opacity=%<value%>
text opacity=%<value%>
# fadings library
path fading
path fading=%<name%>
fit fading#true,false
fading transform={%<options%>}
fading angle=%<degrees%>
scope fading=%<name%>
# decorations library
decoration={%<options%>}
decorate#true,false
## transformations
shift={%<coordinate%>}
shift only
xshift=##L
yshift=##L
scale=%<scale%>
xscale=%<scale%>
yscale=%<scale%>
xslant=%<factor%>
yslant=%<factor%>
rotate=%<degrees%>
rotate around={%<degree%>:%<coordinate%>}
rotate around x=%<degrees%>
rotate around y=%<degrees%>
rotate around z=%<degrees%>
cm={%<a,b,c,d,coord%>}
reset cm
transform canvas={%<options%>}
# topaths library
out=%<degrees%>
in=%<degrees%>
relative#true,false
bend left
bend left=%<degrees%>
bend right
bend right=%<degrees%>
bend angle=%<degrees%>
looseness=%<number%>
out looseness=%<number%>
in looseness=%<number%>
min distance=##L
max distance=##L
out min distance=##L
out max distance=##L
in min distance=##L
in max distance=##L
distance=##L
out distance=##L
in distance=##L
out control=%<coord%>
in control=%<coord%>
controls=%<coord1%> and %<coord2%>
## others
%tikzstyle
# path specific keys
use as bounding box
clip
preaction={%<options%>}
postaction={%<options%>}
late options={%<options%>}
pic actions
#endkeyvals