本文整理汇总了TypeScript中THREE.Box3.copy方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Box3.copy方法的具体用法?TypeScript Box3.copy怎么用?TypeScript Box3.copy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类THREE.Box3
的用法示例。
在下文中一共展示了Box3.copy方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: prepare
prepare (callback: () => void) {
if (this.volume) {
let isolevel
if (this.isolevelType === 'sigma') {
isolevel = this.volume.getValueForSigma(this.isolevel)
} else {
isolevel = this.isolevel
}
if (this.negateIsolevel) isolevel *= -1
if (!this.surface ||
this.__isolevel !== isolevel ||
this.__smooth !== this.smooth ||
this.__contour !== this.contour ||
this.__wrap !== this.wrap ||
this.__boxSize !== this.boxSize ||
(this.boxSize > 0 &&
!this.__boxCenter.equals(this.boxCenter))
) {
this.__isolevel = isolevel
this.__smooth = this.smooth
this.__contour = this.contour
this.__wrap = this.wrap
this.__boxSize = this.boxSize
this.__boxCenter.copy(this.boxCenter)
this.__box.copy(this.box)
const onSurfaceFinish = (surface: Surface) => {
this.surface = surface
callback()
}
if (this.useWorker) {
this.volume.getSurfaceWorker(
isolevel, this.smooth, this.boxCenter, this.boxSize,
this.contour, this.wrap, onSurfaceFinish
)
} else {
onSurfaceFinish(
this.volume.getSurface(
isolevel, this.smooth, this.boxCenter, this.boxSize,
this.contour, this.wrap
)
)
}
} else {
callback()
}
} else {
callback()
}
}
示例2: refresh
/**
* Updates atomSet, bondSet, atomSetCache, atomCount, bondCount, boundingBox, center.
* @emits {Structure.signals.refreshed} when refreshed
* @return {undefined}
*/
refresh () {
if (Debug) Log.time('StructureView.refresh')
this.atomSetCache = {}
const structure = this.structure
if (this.selection.isAllSelection() &&
structure !== this && structure.atomSet && structure.bondSet
) {
this.atomSet = structure.atomSet.clone()
this.bondSet = structure.bondSet.clone()
for (let name in this.atomSetDict) {
const atomSet = this.atomSetDict[ name ]
this.atomSetCache[ '__' + name ] = atomSet.clone()
}
this.atomCount = structure.atomCount
this.bondCount = structure.bondCount
this.boundingBox.copy(structure.boundingBox)
this.center.copy(structure.center)
} else if (this.selection.isNoneSelection() &&
structure !== this && structure.atomSet && structure.bondSet
) {
this.atomSet = new BitArray(structure.atomCount)
this.bondSet = new BitArray(structure.bondCount)
for (let name in this.atomSetDict) {
this.atomSetCache[ '__' + name ] = new BitArray(structure.atomCount)
}
this.atomCount = 0
this.bondCount = 0
this.boundingBox.makeEmpty()
this.center.set(0, 0, 0)
} else {
this.atomSet = this.getAtomSet(this.selection, true)
if (structure.atomSet) {
this.atomSet = this.atomSet.intersection(structure.atomSet)
}
this.bondSet = this.getBondSet()
for (let name in this.atomSetDict) {
const atomSet = this.atomSetDict[ name ]
this.atomSetCache[ '__' + name ] = atomSet.makeIntersection(this.atomSet)
}
this.atomCount = this.atomSet.getSize()
this.bondCount = this.bondSet.getSize()
this.boundingBox = this.getBoundingBox()
this.center = this.boundingBox.getCenter(new Vector3())
}
if (Debug) Log.timeEnd('StructureView.refresh')
this.signals.refreshed.dispatch()
}