Tweak content selecton logic
This commit is contained in:
parent
5e51fd1d10
commit
fd57fe99b7
37
test/fixtures/page_generation/page.py
vendored
37
test/fixtures/page_generation/page.py
vendored
@ -460,9 +460,9 @@ class RandomContentRectangle(ContentRectangle):
|
|||||||
|
|
||||||
|
|
||||||
class Size(Enum):
|
class Size(Enum):
|
||||||
SMALL = 1000
|
SMALL = sqrt(100**2)
|
||||||
MEDIUM = 5000
|
MEDIUM = sqrt((100*5)**2)
|
||||||
LARGE = 10000
|
LARGE = sqrt((100*10)**2)
|
||||||
|
|
||||||
|
|
||||||
def get_size_class(rectangle: Rectangle):
|
def get_size_class(rectangle: Rectangle):
|
||||||
@ -504,26 +504,29 @@ class RecursiveRandomTable(RandomContentRectangle):
|
|||||||
def inner(cell):
|
def inner(cell):
|
||||||
|
|
||||||
inner_region = shrink_rectangle(cell, 0.1)
|
inner_region = shrink_rectangle(cell, 0.1)
|
||||||
choice = random.choice(["text", "plot", "recurse", "plain_table"])
|
choice = random.choice(["text", "plot", "recurse", "plain_table", "blank"])
|
||||||
size = get_size(inner_region)
|
size = get_size(inner_region)
|
||||||
|
|
||||||
if size <= Size.LARGE.value:
|
if size <= Size.SMALL.value:
|
||||||
if choice == "recurse":
|
return generate_random_text_block(inner_region)
|
||||||
return generate_recursive_random_table(cell, border_width=0)
|
|
||||||
elif choice == "plot" and is_square_like(cell):
|
|
||||||
return generate_random_plot(cell)
|
|
||||||
else:
|
|
||||||
return generate_random_table(cell)
|
|
||||||
elif size <= Size.MEDIUM.value:
|
elif size <= Size.MEDIUM.value:
|
||||||
if choice == "plain_table":
|
if choice == "plain_table":
|
||||||
return generate_random_table(cell)
|
return generate_random_table(cell)
|
||||||
elif choice == "text":
|
elif choice == "plot":
|
||||||
return generate_random_text_block(inner_region)
|
return generate_random_plot(cell)
|
||||||
else:
|
else:
|
||||||
return generate_random_text_block(inner_region)
|
return cell
|
||||||
elif size <= Size.SMALL.value:
|
|
||||||
if choice == "text":
|
elif size <= Size.LARGE.value:
|
||||||
return generate_random_text_block(inner_region)
|
if choice == "plot" and is_square_like(cell):
|
||||||
|
return generate_random_plot(cell)
|
||||||
|
# elif choice == "plain_table":
|
||||||
|
# return generate_random_table(cell)
|
||||||
|
elif choice == "blank":
|
||||||
|
return cell
|
||||||
|
else:
|
||||||
|
return generate_recursive_random_table(cell, border_width=0)
|
||||||
return cell
|
return cell
|
||||||
|
|
||||||
cell.content = inner(cell).content
|
cell.content = inner(cell).content
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user