<commit_before>/**
 * @file Distance Representation
 * @author <NAME> <<EMAIL>>
 * @private
 */


import { Color } from "../../lib/three.es6.js";

import { Browser, RepresentationRegistry } from "../globals.js";
import { defaults } from "../utils.js";
import { uniformArray, uniformArray3 } from "../math/array-utils.js";
import Bitset from "../utils/bitset.js";
import StructureRepresentation from "./structure-representation.js";
import Selection from "../selection.js";
import BondStore from "../store/bond-store.js";
import TextBuffer from "../buffer/text-buffer.js";
import CylinderBuffer from "../buffer/cylinder-buffer.js";


/**
 * Distance representation parameter object.
 * @typedef {Object} DistanceRepresentationParameters - distance representation parameters
 * @mixes RepresentationParameters
 * @mixes StructureRepresentationParameters
 *
 * @property {Float} labelSize - size of the distance label
 * @property {Color} labelColor - color of the distance label
 * @property {Boolean} labelVisible - visibility of the distance label
 * @property {Float} labelZOffset - offset in z-direction (i.e. in camera direction)
 * @property {String} labelUnit - distance unit (e.g. 'angstrom' or 'nm')
 * @property {Array[]} atomPair - list of pairs of selection strings (see {@link Selection})
 *                                or pairs of atom indices. Using atom indices is much more
 *                                when the representation is updated often, e.g. by
 *                                changing the selection or the atom positions, as their
 *                                are no selection strings to be evaluated.
 * @property {Integer} radialSegments - cylinder quality (number of segments)
 * @property {Boolean} disableImpostor - disable use of raycasted impostors for rendering
 */
<commit_msg>edit jsdoc for labelUnit<commit_after>/**
 * @file Distance Representation
 * @author <NAME> <<EMAIL>>
 * @private
 */


import { Color } from "../../lib/three.es6.js";

import { Browser, RepresentationRegistry } from "../globals.js";
import { defaults } from "../utils.js";
import { uniformArray, uniformArray3 } from "../math/array-utils.js";
import Bitset from "../utils/bitset.js";
import StructureRepresentation from "./structure-representation.js";
import Selection from "../selection.js";
import BondStore from "../store/bond-store.js";
import TextBuffer from "../buffer/text-buffer.js";
import CylinderBuffer from "../buffer/cylinder-buffer.js";


/**
 * Distance representation parameter object.
 * @typedef {Object} DistanceRepresentationParameters - distance representation parameters
 * @mixes RepresentationParameters
 * @mixes StructureRepresentationParameters
 *
 * @property {Float} labelSize - size of the distance label
 * @property {Color} labelColor - color of the distance label
 * @property {Boolean} labelVisible - visibility of the distance label
 * @property {Float} labelZOffset - offset in z-direction (i.e. in camera direction)
 * @property {String} labelUnit - distance unit (e.g. "angstrom" or "nm"). If set, a distance
 *                                symbol is appended to the label (i.e. 'nm' or '\u00C5'). In case of 'nm', the
 *                                distance value is computed in nanometers instead of Angstroms.
 * @property {Array[]} atomPair - list of pairs of selection strings (see {@link Selection})
 *                                or pairs of atom indices. Using atom indices is much more
 *                                when the representation is updated often, e.g. by
 *                                changing the selection or the atom positions, as their
 *                                are no selection strings to be evaluated.
 * @property {Integer} radialSegments - cylinder quality (number of segments)
 * @property {Boolean} disableImpostor - disable use of raycasted impostors for rendering
 */

{'fraction_non_alphanumeric': 0.1089974293059126, 'fraction_numerical': 0.0017994858611825194, 'mean_word_length': 2.9542682926829267, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 10, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3129220', 'n_tokens_mistral': 988, 'n_tokens_neox': 949, 'n_words': 375}