UNPKG

react-planner-electron

Version:

react-planner-electron is a React Component for plans design. Draw a 2D floorplan and navigate it in 3D mode.

54 lines (49 loc) 1.45 kB
import React from 'react'; import PropTypes from 'prop-types'; import If from '../../utils/react-if'; import * as sharedStyles from '../../shared-style'; const cx = 0; const cy = 0; const radius = 5; const STYLE_CIRCLE = { fill: sharedStyles.MATERIAL_COLORS[500].orange, stroke: sharedStyles.MATERIAL_COLORS[500].orange, cursor: 'default' }; export default function Group({ layer, group, scene, catalog }, {translator}) { return ( <g data-element-root data-prototype={group.prototype} data-id={group.id} data-selected={group.selected} data-layer={layer.id} style={group.selected ? { cursor: 'move' } : {}} transform={`translate(${group.x},${group.y}) rotate(${group.rotation})`} > <If condition={group.selected}> <g data-element-root data-prototype={group.prototype} data-id={group.id} data-selected={group.selected} data-layer={layer.id} data-part="rotation-anchor" > <circle cx={cx} cy={cy} r={radius} style={STYLE_CIRCLE}> <title>{translator.t('Group\'s Barycenter')}</title> </circle> </g> </If> </g> ) } Group.propTypes = { group: PropTypes.object.isRequired, layer: PropTypes.object.isRequired, scene: PropTypes.object.isRequired, catalog: PropTypes.object.isRequired }; Group.contextTypes = { translator: PropTypes.object.isRequired };