{'fraction_non_alphanumeric': 0.021775544388609715, 'fraction_numerical': 0.0, 'mean_word_length': 5.516363636363637, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Automatic Hierarchical Arrangement of Vector Designs

We present a method that transforms an unstructured vector design into a logical hierarchy of groups of objects. Each group is a meaningful collection, formed by proximity in visual characteristics (like size, shape, color, etc.) and spatial location of objects and models the grouping principles designers use. We first simplify the input design by partially or completely flattening it and isolate duplicate geometries in the design (for example, repeating patterns due to copy and paste operations). Next we build the object containment hierarchy by assigning objects that are wholly enclosed inside the geometry of other objects as children of the enclosing parent. In the final clustering phase, we use agglomerative clustering to obtain a bottom-up hierarchical grouping of all objects by comparing and ranking all pairs of objects according to visual and spatial characteristics. Spatial proximity segregates far apart objects, but when they are identical (or near identical) designers generally prefer to keep (and edit) them together. To accommodate this, we detect near identical objects and group them together during clustering despite their spatial separation. We further restrict group formation so that z-order disturbances in the design keep the visual appearance unaffected for tightly-overlapping geometry. The generated organization is equivalent to the original design and the organization results are used to facilitate abstract navigation (hierarchical, lateral or near similar) and selections in the design. Our technique works well with a variety of input designs with commonly identifiable objects and structural patterns. CCS Concepts • Applied computing → Document analysis; • Information systems → Clustering;