61 lines
3.7 KiB
Python
61 lines
3.7 KiB
Python
"""
|
|
Composition modifiers for framing and compositional techniques
|
|
20 modifiers covering classical rules, dynamic compositions, negative space, and advanced techniques
|
|
"""
|
|
|
|
from typing import List
|
|
from core.modifiers import CompositionModifier
|
|
|
|
|
|
def get_composition_modifiers() -> List[CompositionModifier]:
|
|
"""Return the list of 20 composition modifiers"""
|
|
return [
|
|
# CLASSICAL RULES (1-5)
|
|
CompositionModifier(1, "rule of thirds, balanced placement, classic composition",
|
|
["rule-of-thirds", "balanced", "classic"]),
|
|
CompositionModifier(2, "golden ratio, Fibonacci spiral, mathematical beauty",
|
|
["golden-ratio", "fibonacci", "mathematical"]),
|
|
CompositionModifier(3, "symmetrical composition, mirror balance, formal structure",
|
|
["symmetrical", "mirror", "formal"]),
|
|
CompositionModifier(4, "centered composition, bull's eye framing, direct focus",
|
|
["centered", "bulls-eye", "direct"]),
|
|
CompositionModifier(5, "frame within frame, layered composition, depth structure",
|
|
["frame-within-frame", "layered", "depth"]),
|
|
|
|
# DYNAMIC COMPOSITIONS (6-10)
|
|
CompositionModifier(6, "diagonal lines, dynamic energy, movement implied",
|
|
["diagonal", "dynamic", "movement"]),
|
|
CompositionModifier(7, "leading lines, eye guidance, directional flow",
|
|
["leading-lines", "guidance", "flow"]),
|
|
CompositionModifier(8, "vanishing point, perspective depth, convergence",
|
|
["vanishing-point", "perspective", "convergence"]),
|
|
CompositionModifier(9, "S-curve composition, flowing grace, elegant path",
|
|
["s-curve", "flowing", "elegant"]),
|
|
CompositionModifier(10, "triangle composition, stable base, pyramidal structure",
|
|
["triangle", "stable", "pyramidal"]),
|
|
|
|
# NEGATIVE SPACE (11-15)
|
|
CompositionModifier(11, "minimalist negative space, breathing room, isolated subject",
|
|
["negative-space", "minimalist", "isolated"]),
|
|
CompositionModifier(12, "dramatic sky space, overhead emptiness, floating subject",
|
|
["sky-space", "overhead", "floating"]),
|
|
CompositionModifier(13, "foreground negative space, leading room, directional void",
|
|
["foreground-space", "leading-room", "directional"]),
|
|
CompositionModifier(14, "surrounding emptiness, 360 space, complete isolation",
|
|
["surrounding", "emptiness", "isolation"]),
|
|
CompositionModifier(15, "balanced negative/positive, yin-yang space, equilibrium",
|
|
["balanced", "yin-yang", "equilibrium"]),
|
|
|
|
# ADVANCED TECHNIQUES (16-20)
|
|
CompositionModifier(16, "layered depth, multiple planes, spatial complexity",
|
|
["layered", "depth", "planes", "complexity"]),
|
|
CompositionModifier(17, "pattern disruption, break in rhythm, visual surprise",
|
|
["pattern", "disruption", "surprise"]),
|
|
CompositionModifier(18, "juxtaposition, contrasting elements, tension creation",
|
|
["juxtaposition", "contrast", "tension"]),
|
|
CompositionModifier(19, "repeating elements, rhythmic pattern, visual echo",
|
|
["repeating", "rhythmic", "echo"]),
|
|
CompositionModifier(20, "breaking the rules, intentional violation, artistic rebellion",
|
|
["breaking-rules", "intentional", "rebellion"]),
|
|
]
|