单击可在3D渲染器中的3D和普通组件之间切换

时间:2019-07-14 22:37:25

标签: node.js reactjs three.js

我正在创建3个React-Renderer组件,每个组件代表3个几何图形,这必须是可单击的,以便当我单击每个形状时,它链接到另一个不同的组件,但在这种情况下不是3D,只是普通的“ html”如果你希望。我怎样才能做到这一点?并再次通讯回到3D?我陷入了使组件可点击以及指向新组件的链接的困境。预先谢谢你!

为达到这一目的,我对逻辑进行了一些划分,即每个可单击的几何形状都包含一个组件,并且正如您所想象的那样,当我单击纯文本时,这些新组件会引导您。

此组件Shape是其中之一的示例。-

public class RegisterActivity extends AppCompatActivity {

    private RelativeLayout rlayout;
    private Animation animation;

    private EditText telephone,profession,nom,prenom;
    private Button btRegister;
    FirebaseDatabase database;
    DatabaseReference ref = FirebaseDatabase.getInstance().getReference();

    private Personne p;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_register);
        Toolbar toolbar = findViewById(R.id.bgHeader);
        setSupportActionBar(toolbar);
        getSupportActionBar().setTitle("");
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);

        rlayout = findViewById(R.id.rlayout);
        animation = AnimationUtils.loadAnimation(this,R.anim.uptodowndiagonal);
        rlayout.setAnimation(animation);


        SetupUIViews();
        database = FirebaseDatabase.getInstance();
        ref = database.getReference("Personne");
        p = new Personne();
    }

    private void getValues(){
        p.setNom(nom.getText().toString());
        p.setPrenom(prenom.getText().toString());
        p.setProfession(profession.getText().toString());
        p.setTelephone(Integer.parseInt(telephone.getText().toString()));
    }
    public void btRegister(View v)
    {
        ref.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
                getValues();
                ref.child("Personne02").setValue(p);
                Toast.makeText(RegisterActivity.this,"Data Inserted",Toast.LENGTH_LONG).show();
            }

            @Override
            public void onCancelled(@NonNull DatabaseError databaseError) {

            }
        });
    }
    private void SetupUIViews(){
        nom = (EditText) findViewById(R.id.edNom);
        prenom = (EditText) findViewById(R.id.edPrenom);
        profession = (EditText) findViewById(R.id.edPr);
        telephone = (EditText) findViewById(R.id.edTele);
        btRegister = (Button) findViewById(R.id.btRegister);
    }

我希望执行点击时每个组件都可能导致另一个非3D组件。

我有一个主要组件,其中加载了所有图形组件并创建了场景。

0 个答案:

没有答案