49 lines
1.4 KiB
Plaintext
Executable File
49 lines
1.4 KiB
Plaintext
Executable File
define / MO_H_FIELD / mo_poi_h_field
|
|
define / H_ATTRIBUTE / h_field_att
|
|
|
|
# Y = Ax + B
|
|
#
|
|
# Slope
|
|
# 0.1 works
|
|
# 0.2 works
|
|
# 0.25 works
|
|
# 0.29 works
|
|
# 0.295 crashes
|
|
# 0.299 crashes
|
|
# 0.3 crashes
|
|
#
|
|
define / SLOPE / 0.29
|
|
# Intersect
|
|
define / INTERCEPT / 0.0
|
|
#
|
|
# Create some points and then use the distance from the points to define the user
|
|
# defined resolution field h(x,y)
|
|
#
|
|
cmo / create / mo_pts / / / tet
|
|
createpts/xyz/ 1,1,1 /0.1 0.1 0.0/0.1 0.1 0.0/1,1,1/
|
|
createpts/xyz/ 1,1,1 /-0.5 -0.7 0.0/-0.5 -0.7 0.0/1,1,1/
|
|
|
|
compute / distance_field / MO_H_FIELD / mo_pts / dfield
|
|
|
|
math/multiply/MO_H_FIELD/H_ATTRIBUTE/1,0,0/MO_H_FIELD/dfield/SLOPE/
|
|
math/add/MO_H_FIELD/H_ATTRIBUTE/1,0,0/MO_H_FIELD/H_ATTRIBUTE/INTERCEPT/
|
|
|
|
math / floor / MO_H_FIELD / H_ATTRIBUTE / 1 0 0 / &
|
|
MO_H_FIELD / H_ATTRIBUTE / H_SCALE
|
|
math / ceiling / MO_H_FIELD / H_ATTRIBUTE / 1 0 0 / &
|
|
MO_H_FIELD / H_ATTRIBUTE / 10H_SCALE
|
|
|
|
cmo / printatt / MO_H_FIELD / H_ATTRIBUTE / minmax
|
|
#
|
|
# In order to visualize the h(x,y) field, the user can output
|
|
# mo_poi_h_field and look at the attribute h_field_att.
|
|
# Output will slow things down so output should be commented out
|
|
# in production runs.
|
|
#
|
|
# This is the only place where the user has access to out MO_H_FIELD because it
|
|
# will be deleted when createpts / poisson_disk exits.
|
|
#
|
|
dump / avs / output_h_of_x_y_1.inp / MO_H_FIELD
|
|
cmo / delete / mo_pts
|
|
finish
|