UNPKG

paraview-lite

Version:

Lite ParaView client for Scientific Visualization on the Web

267 lines (248 loc) 7.17 kB
<div :class="$style.container"> <v-container fluid fill-height align-center :class="$style.topBar"> <v-layout row justify-start align-center> <v-flex xs1 justify-center> <v-icon :color="color">{{ module.icon }}</v-icon> </v-flex> <v-flex justify-start> <label :class="$style.title" :color="color">{{ module.label }}</label> </v-flex> <v-spacer /> <v-btn flat icon @click="deleteProxy" :color="color" > <v-icon>{{ $vuetify.icons.pvLite.delete }}</v-icon> </v-btn> </v-layout> </v-container> <v-card flat :class="$style.block"> <v-card-title :class="$style.blockTitle"> <span class="body-2">Radius</span> </v-card-title> <v-card-text :class="$style.blockContent"> <v-container fluid grid-list-md :class="$style.noPaddingMargin"> <v-layout row wrap align-center> <v-flex xs9> <v-slider :class="$style.noTopPadding" hide-details v-model="radius" :max="10" :min="0.1" :step="0.1" /> </v-flex> <v-flex xs3> <v-text-field :class="$style.noTopPadding" hide-details type="number" v-model="radius" :min="0.1" :max="10" :step="0.1" /> </v-flex> </v-layout> </v-container> </v-card-text> </v-card> <v-card flat :class="$style.block"> <v-card-title :class="$style.blockTitle"> <span class="body-2">Center</span> </v-card-title> <v-card-text :class="$style.blockContent"> <v-container fluid grid-list-md :class="$style.noPaddingMargin"> <v-layout row wrap align-center> <v-flex xs1> <label :class="$style.smallLabel">X</label> </v-flex> <v-flex xs7> <v-slider :class="$style.noTopPadding" hide-details v-model="xCenter" :min="domains.xCenter.min" :max="domains.xCenter.max" :step="domains.xCenter.step" /> </v-flex> <v-flex xs1/> <v-flex xs3> <v-text-field :class="$style.noTopPadding" hide-details type="number" v-model="xCenter" :min="domains.xCenter.min" :max="domains.xCenter.max" :step="domains.xCenter.step" /> </v-flex> <v-flex xs1> <label :class="$style.smallLabel">Y</label> </v-flex> <v-flex xs7> <v-slider :class="$style.noTopPadding" hide-details v-model="yCenter" :min="domains.yCenter.min" :max="domains.yCenter.max" :step="domains.yCenter.step" /> </v-flex> <v-flex xs1/> <v-flex xs3> <v-text-field :class="$style.noTopPadding" hide-details type="number" v-model="yCenter" :min="domains.yCenter.min" :max="domains.yCenter.max" :step="domains.yCenter.step" /> </v-flex> <v-flex xs1> <label :class="$style.smallLabel">Z</label> </v-flex> <v-flex xs7> <v-slider :class="$style.noTopPadding" hide-details v-model="zCenter" :min="domains.zCenter.min" :max="domains.zCenter.max" :step="domains.zCenter.step" /> </v-flex> <v-flex xs1/> <v-flex xs3> <v-text-field :class="$style.noTopPadding" hide-details type="number" v-model="zCenter" :min="domains.zCenter.min" :max="domains.zCenter.max" :step="domains.zCenter.step" /> </v-flex> </v-layout> </v-container> </v-card-text> </v-card> <v-card flat :class="$style.block"> <v-card-title :class="$style.blockTitle"> <span class="body-2">Phi</span> </v-card-title> <v-card-text :class="$style.blockContent"> <v-container fluid grid-list-md :class="$style.noPaddingMargin"> <v-layout row wrap align-center> <v-flex xs3> <label :class="$style.smallLabel">Range</label> </v-flex> <v-flex xs9> <v-range-slider :class="$style.noTopPadding" hide-details v-model="phi" :max="180" :min="0" :step="1" /> </v-flex> <v-flex xs3> <label :class="$style.smallLabel">Resolution</label> </v-flex> <v-flex xs9> <v-slider :class="$style.noTopPadding" hide-details v-model="phiResolution" :max="60" :min="3" :step="1" /> </v-flex> </v-layout> </v-container> </v-card-text> </v-card> <v-card flat :class="$style.block"> <v-card-title :class="$style.blockTitle"> <span class="body-2">Theta</span> </v-card-title> <v-card-text :class="$style.blockContent"> <v-container fluid grid-list-md :class="$style.noPaddingMargin"> <v-layout row wrap align-center> <v-flex xs3> <label :class="$style.smallLabel">Range</label> </v-flex> <v-flex xs9> <v-range-slider :class="$style.noTopPadding" hide-details v-model="theta" :max="360" :min="0" :step="1" /> </v-flex> <v-flex xs3> <label :class="$style.smallLabel">Resolution</label> </v-flex> <v-flex xs9> <v-slider :class="$style.noTopPadding" hide-details v-model="thetaResolution" :max="60" :min="3" :step="1" /> </v-flex> </v-layout> </v-container> </v-card-text> </v-card> <v-card flat :class="$style.block"> <v-btn block outline color="indigo" v-if="create" @click="createProxy" >Create</v-btn> </v-card> <v-container fluid grid-list-md v-if="hasChange() && !autoApply && !create" :class="$style.buttonBar" > <v-layout row wrap align-center > <v-flex xs3> <v-btn block outline color="red darken-1" @click="reset" >Reset</v-btn> </v-flex> <v-spacer /> <v-flex xs7> <v-btn block outline color="teal accent-4" @click="apply" >Apply ({{ hasChange() }})</v-btn> </v-flex> </v-layout> </v-container> </div>