|
|
|
@ -14,6 +14,7 @@ import { ObjectId } from '../../../DatabaseServices/ObjectId';
|
|
|
|
|
import { TemplateAction } from '../../../DatabaseServices/Template/Action/TemplateAction';
|
|
|
|
|
import { TemplateMaterialAction } from '../../../DatabaseServices/Template/Action/TemplateMaterialAction';
|
|
|
|
|
import { TemplateSetSealAction } from '../../../DatabaseServices/Template/Action/TemplateSetSealAction';
|
|
|
|
|
import { TempalteActionRadiusType } from '../../../DatabaseServices/Template/Action/TemplateaRadiusAction';
|
|
|
|
|
import { TemplateParam } from '../../../DatabaseServices/Template/Param/TemplateParam';
|
|
|
|
|
import { TemplateParamType } from '../../../DatabaseServices/Template/Param/TemplateParamType';
|
|
|
|
|
import { AddFilletAction, AddStretchAction, ArcActionType, CheckTempalteParamName } from '../../../DatabaseServices/Template/TempateUtils';
|
|
|
|
@ -64,12 +65,19 @@ const MaterialActionOptions = [
|
|
|
|
|
{ label: "设置材质", value: EEditorActionType.SetMaterial }
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
const ActionModeOptions = [
|
|
|
|
|
{ label: "圆弧模式", value: TempalteActionRadiusType.Radius },
|
|
|
|
|
{ label: "凸度模式", value: TempalteActionRadiusType.Bulge },
|
|
|
|
|
{ label: "高度模式", value: TempalteActionRadiusType.Height },
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 添加参数
|
|
|
|
|
* 添加动作
|
|
|
|
|
*/
|
|
|
|
|
@observer
|
|
|
|
|
export class TempalteActionDialog extends React.Component<ITempalteActionDialogProps> {
|
|
|
|
|
export class TempalteActionDialog extends React.Component<ITempalteActionDialogProps>
|
|
|
|
|
{
|
|
|
|
|
@observable pararmConfig: ITemplateParam = {
|
|
|
|
|
name: "",
|
|
|
|
|
value: "0",
|
|
|
|
@ -82,6 +90,7 @@ export class TempalteActionDialog extends React.Component<ITempalteActionDialogP
|
|
|
|
|
@observable actionRadioSelect: ActionStretchType = ActionStretchType.Grips;
|
|
|
|
|
@observable actionUseMaterialInfo: boolean = true;
|
|
|
|
|
@observable actionSetComEntsMaterial: boolean = false;
|
|
|
|
|
@observable actionModeType: TempalteActionRadiusType = TempalteActionRadiusType.Radius;
|
|
|
|
|
|
|
|
|
|
private renderDialogBody = () =>
|
|
|
|
|
{
|
|
|
|
@ -102,7 +111,6 @@ export class TempalteActionDialog extends React.Component<ITempalteActionDialogP
|
|
|
|
|
value: par.name
|
|
|
|
|
};
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
const isEditor = this.props.type === EEditorActionType.Editor;
|
|
|
|
|
return (
|
|
|
|
|
<>
|
|
|
|
@ -139,6 +147,21 @@ export class TempalteActionDialog extends React.Component<ITempalteActionDialogP
|
|
|
|
|
/>
|
|
|
|
|
</Label>
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
this.actionType === EEditorActionType.AddRadius &&
|
|
|
|
|
<Label className={Classes.INLINE}>
|
|
|
|
|
<div className='spanText'><span> 动作模式:</span></div>
|
|
|
|
|
<HTMLSelect
|
|
|
|
|
large={true}
|
|
|
|
|
options={ActionModeOptions}
|
|
|
|
|
value={this.actionModeType}
|
|
|
|
|
onChange={(e) =>
|
|
|
|
|
{
|
|
|
|
|
this.actionModeType = parseInt(e.currentTarget.options[e.target.selectedIndex].value);
|
|
|
|
|
}}
|
|
|
|
|
/>
|
|
|
|
|
</Label>
|
|
|
|
|
}
|
|
|
|
|
<Label className={Classes.INLINE}>
|
|
|
|
|
<div className='spanText'><span> 动作名称:</span></div>
|
|
|
|
|
<input
|
|
|
|
@ -448,7 +471,7 @@ export class TempalteActionDialog extends React.Component<ITempalteActionDialogP
|
|
|
|
|
else if (this.actionType === EEditorActionType.AddFillet)
|
|
|
|
|
action = await AddFilletAction(this.props.store.Template);
|
|
|
|
|
else if (this.actionType === EEditorActionType.AddRadius)
|
|
|
|
|
action = await AddFilletAction(this.props.store.Template, ArcActionType.Radius);
|
|
|
|
|
action = await AddFilletAction(this.props.store.Template, ArcActionType.Radius, this.actionModeType);
|
|
|
|
|
else if (this.actionType === EEditorActionType.SetEdge)//TODO:增加封边类型
|
|
|
|
|
{
|
|
|
|
|
let template = this.props.store.Template;
|
|
|
|
|