initial commit

This commit is contained in:
V 2023-11-22 00:49:05 +05:30
parent 0c8be9a9c0
commit 72b0f86bc3
4 changed files with 174 additions and 1 deletions

0
.gitkeep Normal file
View File

175
README.md
View File

@ -1,2 +1,175 @@
# Installables # react-native-artag-module
react native artag module to scan the custom artag and find the card identity, objective options (A,B,C,D) based on (x,y,z) axis
## Installation
```sh
npm install react-native-artag-module
```
## Usage
```js
import * as React from 'react';
import { StyleSheet, Text, View, PermissionsAndroid } from 'react-native';
import ArtagModule, { ARCameraView, ARtagEventEmitter } from 'react-native-artag-module';
export default class App extends React.Component<any> {
state = {
cameraPermission: false,
options: {
attendanceLabel: 'Attendances',
isAttendanceLabel: true,
attendanceTextSize: 14,
standardLabel: 'Standards',
isStandardLabel: true,
standardNameTextSize: 14,
fillRectangleBackgroundColor: false, // fill reactangle color true | false
fillRectangleBackgroundColorCode: { R: 0, G: 255, B: 0 }, // rectangle fill color code in RGB
markerCornerColor: true, // Corner Color
markerCornerColorCode: { R: 0, G: 255, B: 0 },
OptionColor: true, // Options
OptionColorCode: { R: 0, G: 255, B: 0 },
markerIdentityColor: true, // Student ID
markerIdentityColorCode: { R: 0, G: 255, B: 0 },
outlineRectangleColor: true, // Outline Color Code
outlineRectangleColorCode: { R: 0, G: 255, B: 0 },
instantDataLabel: { A: "S", B: "B", C: "C", D: "D" }
},
scantype: 2, // 0 - Attendance, 1 - Instant Feedback, 2 -Quizz
classdata: {
class_id: "1",
class_name: "PKG-B",
student_count: 3,
subject_id: "6",
subject_name: "English",
academic_year: "2021",
name: "Feedback11",
topics: "test",
question_set_id: "10",
serial_no: "1"
},
carddata: [
{
academic_year: "2021",
card_id: "1",
class_id: "1",
profile_picture: "/media/a44e9e0c-579c-4e91-b418-e3e6a191e594.jpg",
student_id: 1,
student_name: "Ashwinn"
},
{
academic_year: "2021",
card_id: "2",
class_id: "1",
profile_picture: "/media/a44e9e0c-579c-4e91-b418-e3e6a191e594.jpg",
student_id: 34,
student_name: "Rakshan"
},
{
academic_year: "2021",
card_id: "3",
class_id: "1",
profile_picture: "/media/a44e9e0c-579c-4e91-b418-e3e6a191e594.jpg",
student_id: 82,
student_name: "Sathyan"
},
{
academic_year: "2021",
card_id: "4",
class_id: "1",
profile_picture: "/media/a44e9e0c-579c-4e91-b418-e3e6a191e594.jpg",
student_id: 82,
student_name: "Sathyan"
},
{
academic_year: "2021",
card_id: "5",
class_id: "1",
profile_picture: "/media/a44e9e0c-579c-4e91-b418-e3e6a191e594.jpg",
student_id: 82,
student_name: "Sathyan"
}
]
}
async componentDidMount() {
await PermissionsAndroid.requestMultiple([
PermissionsAndroid.PERMISSIONS.CAMERA,
PermissionsAndroid.PERMISSIONS.READ_EXTERNAL_STORAGE,
PermissionsAndroid.PERMISSIONS.WRITE_EXTERNAL_STORAGE,
]);
await ArtagModule.ARInitialize().then(async res => {
console.log('ARInitialize', res);
this.setState({ cameraPermission: true })
ARtagEventEmitter.addListener('onChange', this._onChange);
});
}
componentWillUnmount() {
ARtagEventEmitter.removeListener('onChange', this._onChange);
}
_onChange(result: any) {
console.log("result", result);
}
render() {
if (!this.state.cameraPermission) {
return (
<>
<View style={styles.container}>
<Text>Please wait....</Text>
</View>
</>
)
} else {
return (
<ARCameraView {...this.props} style={styles.preview} options={this.state.options} type={this.state.scantype} classes={this.state.classdata} cards={this.state.carddata} onChange={this._onChange} />
)
}
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
alignItems: 'center',
justifyContent: 'center',
},
preview: {
alignItems: 'center',
backgroundColor: 'transparent',
top: 0,
left: 0,
right: 0,
bottom: 0,
position: 'absolute',
width: '100%',
height: '100%'
},
});
```
## Contributing
See the [contributing guide](CONTRIBUTING.md) to learn how to contribute to the repository and the development workflow.
## License
MIT

Binary file not shown.

Binary file not shown.