Skip to content
This repository has been archived by the owner on Feb 10, 2023. It is now read-only.

Commit

Permalink
fix(soba): rename NgtImage to NgtSobaImage
Browse files Browse the repository at this point in the history
  • Loading branch information
nartc committed Nov 22, 2021
1 parent 1d716c6 commit c00acdc
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 33 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,15 @@ import { Directive } from '@angular/core';
import * as THREE from 'three';
import { shaderMaterial } from '../shader-material/shader-material';

export type ImageShaderMaterialParameters = THREE.ShaderMaterialParameters & {
scale?: number[];
imageBounds?: number[];
color?: NgtColor;
map: THREE.Texture;
zoom?: number;
grayscale?: number;
};
export type SobaImageShaderMaterialParameters =
THREE.ShaderMaterialParameters & {
scale?: number[];
imageBounds?: number[];
color?: NgtColor;
map: THREE.Texture;
zoom?: number;
grayscale?: number;
};

export const ImageShaderMaterial = shaderMaterial(
{
Expand Down Expand Up @@ -61,16 +62,18 @@ export const ImageShaderMaterial = shaderMaterial(
);

@Directive({
selector: 'ngt-image-shader-material',
exportAs: 'ngtImageShaderMaterial',
providers: [{ provide: NgtMaterial, useExisting: NgtImageShaderMaterial }],
selector: 'ngt-soba-image-shader-material',
exportAs: 'ngtSobaImageShaderMaterial',
providers: [
{ provide: NgtMaterial, useExisting: NgtSobaImageShaderMaterial },
],
})
export class NgtImageShaderMaterial extends NgtMaterial<
export class NgtSobaImageShaderMaterial extends NgtMaterial<
typeof ImageShaderMaterial.prototype,
ImageShaderMaterialParameters
SobaImageShaderMaterialParameters
> {
static ngAcceptInputType_parameters:
| ImageShaderMaterialParameters
| SobaImageShaderMaterialParameters
| undefined;

materialType = ImageShaderMaterial;
Expand Down
31 changes: 12 additions & 19 deletions packages/soba/abstractions/src/lib/image/image.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,38 +23,33 @@ import {
} from '@angular/core';
import { Observable, tap } from 'rxjs';
import * as THREE from 'three';
import { NgtImageShaderMaterial } from './image-shader-material.directive';
import { NgtSobaImageShaderMaterial } from './image-shader-material.directive';

@Component({
selector: 'ngt-image[url]',
exportAs: 'ngtImage',
selector: 'ngt-soba-image[url]',
exportAs: 'ngtSobaImage',
template: `
<ng-container *ngIf="texture$ | async as texture">
<ngt-mesh
[scale]="scale"
[controller]="object3dController"
(ready)="ready.emit([this, $event])"
(animateReady)="
animateReady.emit({
renderState: $event.renderState,
animateObject: [this, $event.animateObject]
})
"
(ready)="ready.emit($event)"
(animateReady)="animateReady.emit($event)"
>
<ngt-plane-geometry
[args]="[1, 1, segments, segments]"
></ngt-plane-geometry>
<ngt-image-shader-material
<ngt-soba-image-shader-material
[parameters]="{color, map: texture, zoom, grayscale, scale: planeBounds, imageBounds}"
></ngt-image-shader-material>
></ngt-soba-image-shader-material>
<ng-content></ng-content>
</ngt-mesh>
</ng-container>
`,
changeDetection: ChangeDetectionStrategy.OnPush,
providers: [NGT_OBJECT_3D_CONTROLLER_PROVIDER],
})
export class NgtImage implements OnChanges {
export class NgtSobaImage implements OnChanges {
@Input() segments?: number;
@Input() scale?: number;
@Input() color?: NgtColor;
Expand All @@ -69,10 +64,8 @@ export class NgtImage implements OnChanges {
);
}

@Output() ready = new EventEmitter<[NgtImage, THREE.Mesh]>();
@Output() animateReady = new EventEmitter<
NgtAnimationReady<[NgtImage, THREE.Mesh]>
>();
@Output() ready = new EventEmitter<THREE.Mesh>();
@Output() animateReady = new EventEmitter<NgtAnimationReady<THREE.Mesh>>();

planeBounds?: [number, number];
imageBounds?: [number, number];
Expand All @@ -93,8 +86,8 @@ export class NgtImage implements OnChanges {
}

@NgModule({
declarations: [NgtImage, NgtImageShaderMaterial],
exports: [NgtImage, NgtImageShaderMaterial],
declarations: [NgtSobaImage, NgtSobaImageShaderMaterial],
exports: [NgtSobaImage, NgtSobaImageShaderMaterial],
imports: [NgtCoreModule, NgtMeshModule, NgtPlaneGeometryModule, CommonModule],
})
export class NgtImageModule {}

0 comments on commit c00acdc

Please sign in to comment.